Test search with time travel after delete (#12466)

Signed-off-by: ThreadDao <yufen.zong@zilliz.com>
This commit is contained in:
ThreadDao 2021-11-30 20:11:44 +08:00 committed by GitHub
parent c749427bca
commit 7e510ae190
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 11 deletions

View File

@ -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

View File

@ -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