diff options
Diffstat (limited to 'examples/redis-unstable/tests/unit/moduleapi/defrag.tcl')
| -rw-r--r-- | examples/redis-unstable/tests/unit/moduleapi/defrag.tcl | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/examples/redis-unstable/tests/unit/moduleapi/defrag.tcl b/examples/redis-unstable/tests/unit/moduleapi/defrag.tcl deleted file mode 100644 index 7e714da..0000000 --- a/examples/redis-unstable/tests/unit/moduleapi/defrag.tcl +++ /dev/null @@ -1,101 +0,0 @@ -set testmodule [file normalize tests/modules/defragtest.so] - -start_server {tags {"modules external:skip debug_defrag:skip"} overrides {{save ""}}} { - r module load $testmodule - r config set hz 100 - r config set active-defrag-ignore-bytes 1 - r config set active-defrag-threshold-lower 0 - r config set active-defrag-cycle-min 99 - - # try to enable active defrag, it will fail if redis was compiled without it - catch {r config set activedefrag yes} e - if {[r config get activedefrag] eq "activedefrag yes"} { - - test {Module defrag: simple key defrag works} { - r config set activedefrag no - wait_for_condition 100 50 { - [s active_defrag_running] eq 0 - } else { - fail "Unable to wait for active defrag to stop" - } - - r flushdb - r frag.resetstats - r frag.create key1 1 1000 0 - - r config set activedefrag yes - wait_for_condition 200 50 { - [getInfoProperty [r info defragtest_stats] defragtest_defrag_ended] > 0 - } else { - fail "Unable to wait for a complete defragmentation cycle to finish" - } - - set info [r info defragtest_stats] - assert {[getInfoProperty $info defragtest_datatype_attempts] > 0} - assert_equal 0 [getInfoProperty $info defragtest_datatype_resumes] - assert_morethan [getInfoProperty $info defragtest_datatype_raw_defragged] 0 - assert_morethan [getInfoProperty $info defragtest_defrag_started] 0 - assert_morethan [getInfoProperty $info defragtest_defrag_ended] 0 - } {} {tsan:skip} - - test {Module defrag: late defrag with cursor works} { - r config set activedefrag no - wait_for_condition 100 50 { - [s active_defrag_running] eq 0 - } else { - fail "Unable to wait for active defrag to stop" - } - - r flushdb - r frag.resetstats - - # key can only be defragged in no less than 10 iterations - # due to maxstep - r frag.create key2 10000 100 1000 - - r config set activedefrag yes - wait_for_condition 1000 50 { - [getInfoProperty [r info defragtest_stats] defragtest_defrag_ended] > 0 && - [getInfoProperty [r info defragtest_stats] defragtest_datatype_resumes] > 10 - } else { - fail "Unable to wait for a complete defragmentation cycle to finish" - } - - set info [r info defragtest_stats] - assert_equal 0 [getInfoProperty $info defragtest_datatype_wrong_cursor] - assert_morethan [getInfoProperty $info defragtest_datatype_raw_defragged] 0 - assert_morethan [getInfoProperty $info defragtest_defrag_started] 0 - assert_morethan [getInfoProperty $info defragtest_defrag_ended] 0 - } {} {tsan:skip} - - test {Module defrag: global defrag works} { - r config set activedefrag no - wait_for_condition 100 50 { - [s active_defrag_running] eq 0 - } else { - fail "Unable to wait for active defrag to stop" - } - - r flushdb - r frag.resetstats - r frag.create_frag_global 50000 - r config set activedefrag yes - - wait_for_condition 1000 50 { - [getInfoProperty [r info defragtest_stats] defragtest_defrag_ended] > 0 - } else { - fail "Unable to wait for a complete defragmentation cycle to finish" - } - - set info [r info defragtest_stats] - assert {[getInfoProperty $info defragtest_global_strings_attempts] > 0} - assert {[getInfoProperty $info defragtest_global_dicts_attempts] > 0} - assert {[getInfoProperty $info defragtest_global_dicts_defragged] > 0} - assert {[getInfoProperty $info defragtest_global_dicts_items_defragged] > 0} - assert_morethan [getInfoProperty $info defragtest_defrag_started] 0 - assert_morethan [getInfoProperty $info defragtest_defrag_ended] 0 - assert_morethan [getInfoProperty $info defragtest_global_dicts_resumes] [getInfoProperty $info defragtest_defrag_ended] - assert_morethan [getInfoProperty $info defragtest_global_subdicts_resumes] [getInfoProperty $info defragtest_defrag_ended] - } {} {tsan:skip} - } -} |
