From 3e31727e5083add07116f4bd467a0be0fe9d762a Mon Sep 17 00:00:00 2001 From: ThreadDao Date: Wed, 10 Nov 2021 19:48:24 +0800 Subject: [PATCH] [skip ci] Add skipped compact case (#11557) Signed-off-by: ThreadDao --- .../testcases/test_compaction.py | 145 +++++++++++++++++- 1 file changed, 143 insertions(+), 2 deletions(-) diff --git a/tests/python_client/testcases/test_compaction.py b/tests/python_client/testcases/test_compaction.py index d9ccc6f1c4..cf23b12308 100644 --- a/tests/python_client/testcases/test_compaction.py +++ b/tests/python_client/testcases/test_compaction.py @@ -116,13 +116,154 @@ class TestCompactionOperation(TestcaseBase): pass @pytest.mark.tags(CaseLabel.L2) - def test_compact_before_index(self): + def test_compact_and_index(self): """ target: test compact and create index method: 1.insert data into two segments 2.compact 3.create index - 4.search + 4.load and search expected: Verify search result and index info """ pass + + @pytest.mark.tags(CaseLabel.L0) + def test_compact_and_search(self): + """ + target: test compact and search + method: 1.insert data into two segments + 2.compact + 3.load and search + expected: Verify search result + """ + pass + + @pytest.mark.tags(CaseLabel.L2) + def test_compact_search_after_delete_channel(self): + """ + target: test search after compact, and queryNode get delete request from channel, + rather than compacted delta log + method: 1.insert, flush and load + 2.delete half + 3.compact + 4.search + expected: No exception + """ + pass + + @pytest.mark.tags(CaseLabel.L2) + def test_compact_delete_inside_time_travel(self): + """ + target: test compact inside time_travel range + method: 1.insert data and get ts + 2.delete ids + 3.search with ts + 4.compact + 5.search with ts + expected: Both search are successful + """ + pass + + @pytest.mark.tags(CaseLabel.L1) + def test_compact_delete_outside_time_travel(self): + """ + target: test compact outside time_travel range + method: todo + expected: Verify compact result + """ + pass + + @pytest.mark.tags(CaseLabel.L0) + def test_compact_merge_two_segments(self): + """ + target: test compact merge two segments + method: 1.create with shard_num=1 + 2.insert half nb and flush + 3.insert half nb and flush + 4.compact + 5.search + expected: Verify segments are merged + """ + pass + + @pytest.mark.tags(CaseLabel.L2) + def test_compact_no_merge(self): + """ + target: test compact when no segments merge + method: 1.create with shard_num=1 + 2.insert and flush + 3.compact and search + expected: No exception + """ + pass + + @pytest.mark.tags(CaseLabel.L1) + def test_compact_merge_multi_segments(self): + """ + target: test compact and merge multi small segments + method: 1.create with shard_num=1 + 2.insert one and flush (multi times) + 3.compact + 4.load and search + expected: Verify segments info + """ + pass + + @pytest.mark.tags(CaseLabel.L2) + def test_compact_merge_inside_time_travel(self): + """ + target: test compact and merge segments inside time_travel range + method: todo + expected: Verify segments inside time_travel merged + """ + pass + + @pytest.mark.tags(CaseLabel.L2) + def test_compact_threshold_auto_merge(self): + """ + target: test num (segment_size < 1/2Max) reaches auto-merge threshold + method: todo + expected: Auto-merge segments + """ + pass + + @pytest.mark.tags(CaseLabel.L2) + def test_compact_less_threshold_no_merge(self): + """ + target: test compact the num of segments that size less than 1/2Max, does not reach the threshold + method: todo + expected: No auto-merge + """ + pass + + @pytest.mark.tags(CaseLabel.L2) + def test_compact_multi_collections(self): + """ + target: test compact multi collections with merge + method: create 50 collections, add entities into them and compact in turn + expected: No exception + """ + pass + + @pytest.mark.tags(CaseLabel.L1) + def test_compact_and_insert(self): + """ + target: test insert after compact + method: 1.create and insert with flush + 2.delete and compact + 3.insert new data + 4.load and search + expected: Verify search result and segment info + """ + pass + + @pytest.mark.tags(CaseLabel.L1) + def test_compact_and_delete(self): + """ + target: test delete after compact + method: 1.delete half and compact + 2.load and query + 3.delete and query + expected: Verify deleted ids + """ + pass