From ed2269762b3be6c384025dcf3237b58f10babf03 Mon Sep 17 00:00:00 2001 From: Oran Agra Date: Tue, 19 Nov 2019 14:53:39 +0200 Subject: [PATCH] try to fix an unstable test (module hook for loading progress) there were two lssues, one is taht BGREWRITEAOF failed since the initial one was still in progress the solution for this one is to enable appendonly from the server startup so there's no initial aofrw. the other problem was 0 loading progress events, theory is that on some platforms a sleep of 1 will cause a much greater delay due to the context switch, but on other platform it doesn't. in theory a sleep of 100 micro for 1k keys whould take 100ms, and with hz of 500 we should be gettering 50 events (one every 2ms). in practise it doesn't work like that, so trying to find a sleep that would be long enough but still not cause the test to take too long. --- tests/unit/moduleapi/hooks.tcl | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/tests/unit/moduleapi/hooks.tcl b/tests/unit/moduleapi/hooks.tcl index cbca9c3e..bf2b9010 100644 --- a/tests/unit/moduleapi/hooks.tcl +++ b/tests/unit/moduleapi/hooks.tcl @@ -1,9 +1,7 @@ set testmodule [file normalize tests/modules/hooks.so] tags "modules" { - start_server {} { - r module load $testmodule - r config set appendonly yes + start_server [list overrides [list loadmodule "$testmodule" appendonly yes]] { test {Test clients connection / disconnection hooks} { for {set j 0} {$j < 2} {incr j} { @@ -44,15 +42,19 @@ tags "modules" { r set "bar$j" x } # set some configs that will cause many loading progress events during aof loading - r config set key-load-delay 1 + r config set key-load-delay 500 r config set dynamic-hz no r config set hz 500 r DEBUG LOADAOF assert_equal [r hooks.event_last loading-aof-start] 0 assert_equal [r hooks.event_last loading-end] 0 assert {[r hooks.event_count loading-rdb-start] == 0} - assert {[r hooks.event_count loading-progress-rdb] >= 2} ;# comes from the preamble section - assert {[r hooks.event_count loading-progress-aof] >= 2} + assert_lessthan 2 [r hooks.event_count loading-progress-rdb] ;# comes from the preamble section + assert_lessthan 2 [r hooks.event_count loading-progress-aof] + if {$::verbose} { + puts "rdb progress events [r hooks.event_count loading-progress-rdb]" + puts "aof progress events [r hooks.event_count loading-progress-aof]" + } } # undo configs before next test r config set dynamic-hz yes