From 7e510ae190ffa7560c8b1e1c33c3d87ec2fb3f04 Mon Sep 17 00:00:00 2001 From: ThreadDao Date: Tue, 30 Nov 2021 20:11:44 +0800 Subject: [PATCH] Test search with time travel after delete (#12466) Signed-off-by: ThreadDao --- tests/python_client/base/utility_wrapper.py | 6 +++++- tests/python_client/testcases/test_delete.py | 14 ++++---------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/tests/python_client/base/utility_wrapper.py b/tests/python_client/base/utility_wrapper.py index c1b969788a..d9ec59606a 100644 --- a/tests/python_client/base/utility_wrapper.py +++ b/tests/python_client/base/utility_wrapper.py @@ -123,5 +123,9 @@ class ApiUtilityWrapper: def mkts_from_datetime(self, d_time=None, milliseconds=0., delta=None): d_time = datetime.now() if d_time is None else d_time - res, is_succ = api_request([self.ut.mkts_from_datetime, d_time, milliseconds, delta]) + res, _ = api_request([self.ut.mkts_from_datetime, d_time, milliseconds, delta]) + return res + + def mkts_from_hybridts(self, hybridts, milliseconds=0., delta=None): + res, _ = api_request([self.ut.mkts_from_hybridts, hybridts, milliseconds, delta]) return res diff --git a/tests/python_client/testcases/test_delete.py b/tests/python_client/testcases/test_delete.py index 03bf23e5ab..d1dcaae645 100644 --- a/tests/python_client/testcases/test_delete.py +++ b/tests/python_client/testcases/test_delete.py @@ -870,8 +870,7 @@ class TestDeleteOperation(TestcaseBase): """ pass - @pytest.mark.xfail(reason="Issue 12336") - @pytest.mark.tags(CaseLabel.L0) + @pytest.mark.tags(CaseLabel.L1) def test_delete_time_travel(self): """ target: test search with time travel after delete @@ -880,15 +879,13 @@ class TestDeleteOperation(TestcaseBase): 3.load and search with time travel expected: search successfully """ - from datetime import datetime - from pymilvus import utility collection_w = self.init_collection_wrap(cf.gen_unique_str(prefix)) df = cf.gen_default_dataframe_data(tmp_nb) insert_res, _ = collection_w.insert(df) collection_w.load() - before_delete = utility.mkts_from_datetime(datetime.now(), milliseconds=1.0) + tt = self.utility_wrap.mkts_from_hybridts(insert_res.timestamp, milliseconds=0.) res_before, _ = collection_w.search(df[ct.default_float_vec_field_name][:1].to_list(), ct.default_float_vec_field_name, @@ -897,16 +894,13 @@ class TestDeleteOperation(TestcaseBase): expr = f'{ct.default_int64_field_name} in {insert_res.primary_keys[:tmp_nb // 2]}' delete_res, _ = collection_w.delete(expr) - collection_w.load() res_travel, _ = collection_w.search(df[ct.default_float_vec_field_name][:1].to_list(), ct.default_float_vec_field_name, ct.default_search_params, ct.default_limit, - travel_timestamp=before_delete - ) + travel_timestamp=tt) assert res_before[0].ids == res_travel[0].ids - @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.xfail(reason="Issue 12336") + @pytest.mark.tags(CaseLabel.L1) def test_delete_insert_multi(self): """ target: test delete after multi insert