building redis on linux/64
with origin/5.0, all's good ... build's got no errors, all tests pass with origin/6.0, build;s got no errors, but one test fails
...
!!! WARNING The following tests failed:
*** [err]: Active defrag in tests/unit/memefficiency.tcl
Expected 68 <= 30 (context: type eval line 64 cmd {assert {$max_latency <= 30}} proc ::test)
Cleanup: may take some time... OK
make[1]: *** [Makefile:308: test] Error 1
make[1]: Leaving directory '/usr/local/src/redis/src'
make: *** [Makefile:6: test] Error 2
since 6 is still rc, not sure what add'l info is helpful here.
let me know, happy to provide.
Comment From: oranagra
@pgnd how strong / busy is the machine ruining the tests?
Comment From: pgnd
@oranagra fairly beefy, and not heavily in use ... other than running these tests
cat /proc/cpuinfo | egrep "model name|bogo" | sort -u
bogomips : 7186.64
model name : AMD Ryzen 7 3700X 8-Core Processor
htop
1 [|| 1.9%] Tasks: 173, 816 thr, 278 kthr; 1 running
2 [||| 2.6%] Load average: 1.13 0.80 1.09
3 [| 1.3%] Uptime: 14:37:21
...
16 [ 0.0%]
free -m
total used free shared buff/cache available
Mem: 64225 4516 28699 586 31009 58421
Swap: 8191 0 8191
Comment From: oranagra
@pgnd does it fail consistently?
i assume that when this test runs alone, either with --clients 1 or with --single unit/memefficiency it passes. please confirm.
Comment From: pgnd
@oranagra
simple repeat of
make test
failed 4/10 times.
i assume that when this test runs alone, either with --clients 1 or with --single unit/memefficiency it passes. please confirm.
otoh, single test
tclsh tests/test_helper.tcl --single unit/memefficiency
passes 10/10 times
if need be, can play with stress-ng ... but suspsect this can be made better behaved?
looking to see what's changed 'tween redis v5 & v6 tests.
Comment From: oranagra
what changed is that this test was "improved" in redis 6, to check latency (together with a fix in active defrag that reduces latency).
i'll need to work on this test to make it less sensitive in some way. or add some changes the the test infrastructure that will allow some tests to be marked as tests that need to run solo, and not in parallel to others.
Comment From: pgnd
some tests to be marked as tests that need to run solo, and not in parallel to others
that sounds like a good choice.
i'd be hard pressed to believe that this box is resource-limited, so much so as to be a legit test fail. more likely on a VM instance, or small-ish box ... but even then, lots of oopmh-per-$$ available these days.
Comment From: oranagra
done in #7103
Comment From: oranagra
hopefully fixed by #7103. @pgnd please reopen if you still see it.