summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjörn Höfling <bjoern.hoefling@bjoernhoefling.de>2021-02-27 22:57:11 +0100
committerBjörn Höfling <bjoern.hoefling@bjoernhoefling.de>2021-02-27 23:34:09 +0100
commit23dcf4339d1dc102b2c509a151734f4caff793bd (patch)
tree28e84131f5e6152166de643718460b1949144e76
parentdecd0dc6bcf88669d272e61f95de0a4d0649fbf8 (diff)
gnu: java-snappy: Fix checks when build machine has too much memory.
* gnu/packages/java-compression.scm (java-snappy)[arguments]: Add set-test-memory-size phase. This fixes <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=46780>. Thanks to zimoun for the solving idea. The CachingBufferPoolTest tries to allocate a lot of memory (20GB) and the test succeeds if there is not enough memory available in the JVM. When the build machine has a lot of memory (which is the case on the Guix CI system), the JVM will use more than 20GB as maximum heap size. In consequence, the test fails. The new phase adds a maxmemory size of 2G for the tests. Thus all other tests will have enough memory and the CachingBufferPoolTest will fail.
-rw-r--r--gnu/packages/java-compression.scm5
1 files changed, 5 insertions, 0 deletions
diff --git a/gnu/packages/java-compression.scm b/gnu/packages/java-compression.scm
index 654d138c33..5f653bcc94 100644
--- a/gnu/packages/java-compression.scm
+++ b/gnu/packages/java-compression.scm
@@ -99,6 +99,11 @@
(copy-recursively "src/main/resources/org/xerial/snappy/native"
"build/classes/org/xerial/snappy/native")
#t))
+ (add-before 'build 'set-test-memory-size
+ (lambda _
+ (substitute* "build.xml"
+ (("<junit printsummary=") "<junit maxmemory=\"2G\" printsummary="))
+ #t))
(add-before 'check 'fix-failing
(lambda _
(with-directory-excursion "src/test/java/org/xerial/snappy"