diff --git a/tests/python_client/testcases/test_collection.py b/tests/python_client/testcases/test_collection.py index 85255f31f747d243d198fb33cffdb7bf77447734..e6bc11a07c06c8d07bbdf13a5a0ca4a50819fec2 100644 --- a/tests/python_client/testcases/test_collection.py +++ b/tests/python_client/testcases/test_collection.py @@ -2238,7 +2238,6 @@ class TestLoadCollection(TestcaseBase): default_limit, partition_names=[partition1]) @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23499") def test_load_collection_after_release_partition(self): """ target: test load collection after load collection and release partition @@ -2264,7 +2263,6 @@ class TestLoadCollection(TestcaseBase): collection_w.load() @pytest.mark.tags(CaseLabel.L2) - # @pytest.mark.skip(reason="issue #23499") def test_load_partitions_after_release_partition(self): """ target: test load collection after release partition and load partitions @@ -2288,7 +2286,6 @@ class TestLoadCollection(TestcaseBase): partition_w2.load() @pytest.mark.tags(CaseLabel.L2) - # @pytest.mark.skip(reason="issue #23499") def test_load_collection_after_release_partition_collection(self): """ target: test load collection after release partition and collection @@ -2311,7 +2308,6 @@ class TestLoadCollection(TestcaseBase): collection_w.load() @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23532") def test_load_partitions_after_release_partition_collection(self): """ target: test load partitions after release partition and collection @@ -2371,7 +2367,6 @@ class TestLoadCollection(TestcaseBase): partition_w2.load() @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23499") def test_load_collection_after_drop_partition_and_release_another(self): """ target: test load collection after drop a partition and release another @@ -2386,6 +2381,7 @@ class TestLoadCollection(TestcaseBase): partition_w1 = self.init_partition_wrap(collection_w, partition1) partition_w2 = self.init_partition_wrap(collection_w, partition2) collection_w.load() + partition_w1.release() partition_w1.drop() partition_w2.release() error = {ct.err_code: 1, ct.err_msg: 'not loaded into memory'} @@ -3344,7 +3340,6 @@ class TestLoadPartition(TestcaseBase): collection_w.query(default_term_expr) @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23534") def test_load_collection_after_load_release_partition(self): """ target: test load collection after load and release partition @@ -3384,7 +3379,6 @@ class TestLoadPartition(TestcaseBase): collection_w.query(default_term_expr, partition_names=[partition1, partition2]) @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23534") def test_load_collection_after_load_partition_release_partitions(self): """ target: test load collection after load partition and release partitions @@ -3408,7 +3402,6 @@ class TestLoadPartition(TestcaseBase): collection_w.query(default_term_expr, partition_names=[partition1, partition2]) @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23536") def test_load_partition_after_load_drop_partition(self): """ target: test load partition after load and drop partition @@ -3428,7 +3421,6 @@ class TestLoadPartition(TestcaseBase): collection_w.query(default_term_expr, partition_names=[partition2]) @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23937") def test_load_collection_after_load_drop_partition(self): """ target: test load collection after load and drop partition @@ -3454,7 +3446,6 @@ class TestLoadPartition(TestcaseBase): collection_w.query(default_term_expr) @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23536") def test_release_load_partition_after_load_drop_partition(self): """ target: test release load partition after load and drop partition @@ -3557,7 +3548,6 @@ class TestLoadPartition(TestcaseBase): collection_w.query(default_term_expr) @pytest.mark.tags(CaseLabel.L2) - @pytest.mark.skip(reason="issue #23176") def test_release_unloaded_partition(self): """ target: test load collection after load and drop partition diff --git a/tests/python_client/testcases/test_search.py b/tests/python_client/testcases/test_search.py index 6896483a1c917ccdc6a889ad58124e73c5e5c709..75e93330947c259744c936c1063e71c2625e7a8a 100644 --- a/tests/python_client/testcases/test_search.py +++ b/tests/python_client/testcases/test_search.py @@ -6739,8 +6739,7 @@ class TestCollectionRangeSearch(TestcaseBase): class TestCollectionLoadOperation(TestcaseBase): """ Test case of search combining load and other functions """ - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24040") + @pytest.mark.tags(CaseLabel.L2) def test_delete_load_collection_release_partition(self): """ target: test delete load collection release partition @@ -6764,8 +6763,8 @@ class TestCollectionLoadOperation(TestcaseBase): partition_w1.release() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 50}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -6775,8 +6774,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 50}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #23532") + @pytest.mark.tags(CaseLabel.L1) def test_delete_load_collection_release_collection(self): """ target: test delete load collection release collection @@ -6802,8 +6800,8 @@ class TestCollectionLoadOperation(TestcaseBase): partition_w2.load() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 50}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -6813,7 +6811,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 50}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_delete_load_partition_release_collection(self): """ target: test delete load partition release collection @@ -6848,8 +6846,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24074") + @pytest.mark.tags(CaseLabel.L2) def test_delete_release_collection_load_partition(self): """ target: test delete load collection release collection @@ -6875,8 +6872,8 @@ class TestCollectionLoadOperation(TestcaseBase): partition_w2.load() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 50}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -6886,7 +6883,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 50}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_delete_load_partition_drop_partition(self): """ target: test delete load partition drop partition @@ -6922,7 +6919,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not found'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L1) def test_load_collection_delete_release_partition(self): """ target: test delete load collection release partition @@ -6959,8 +6956,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 50}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24040") + @pytest.mark.tags(CaseLabel.L1) def test_load_partition_delete_release_collection(self): """ target: test delete load collection release partition @@ -6986,8 +6982,8 @@ class TestCollectionLoadOperation(TestcaseBase): partition_w1.load() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 50}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.check_search_results, @@ -6997,7 +6993,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_load_partition_delete_drop_partition(self): """ target: test load partition delete drop partition @@ -7033,8 +7029,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not found'}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24040") + @pytest.mark.tags(CaseLabel.L1) def test_load_collection_release_partition_delete(self): """ target: test load collection release partition delete @@ -7058,8 +7053,8 @@ class TestCollectionLoadOperation(TestcaseBase): collection_w.delete(f"int64 in {delete_ids}") # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 50}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -7069,8 +7064,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 50}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #23989") + @pytest.mark.tags(CaseLabel.L2) def test_load_partition_release_collection_delete(self): """ target: test load partition release collection delete @@ -7107,8 +7101,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 50}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #23989") + @pytest.mark.tags(CaseLabel.L2) def test_load_partition_drop_partition_delete(self): """ target: test load partition drop partition delete @@ -7145,7 +7138,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not found'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_compact_load_collection_release_partition(self): """ target: test compact load collection release partition @@ -7172,8 +7165,8 @@ class TestCollectionLoadOperation(TestcaseBase): partition_w1.release() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 300, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 100}) collection_w.search(vectors[:1], field_name, default_search_params, 300, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -7183,8 +7176,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 100}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #23532") + @pytest.mark.tags(CaseLabel.L2) def test_compact_load_collection_release_collection(self): """ target: test compact load collection release collection @@ -7225,8 +7217,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue ") + @pytest.mark.tags(CaseLabel.L2) def test_compact_load_partition_release_collection(self): """ target: test compact load partition release collection @@ -7266,8 +7257,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 100}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24048") + @pytest.mark.tags(CaseLabel.L2) def test_load_collection_compact_drop_partition(self): """ target: test load collection compact drop partition @@ -7307,7 +7297,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not found'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_load_partition_compact_release_collection(self): """ target: test load partition compact release collection @@ -7347,7 +7337,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L1) def test_load_collection_release_partition_compact(self): """ target: test load collection release partition compact @@ -7374,8 +7364,8 @@ class TestCollectionLoadOperation(TestcaseBase): collection_w.get_compaction_state() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 300, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 100}) collection_w.search(vectors[:1], field_name, default_search_params, 300, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -7385,8 +7375,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 100}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24040") + @pytest.mark.tags(CaseLabel.L2) def test_flush_load_collection_release_partition(self): """ target: test delete load collection release partition @@ -7409,8 +7398,8 @@ class TestCollectionLoadOperation(TestcaseBase): partition_w1.release() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 100}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -7420,8 +7409,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 100}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #23532 #24040") + @pytest.mark.tags(CaseLabel.L2) def test_flush_load_collection_release_collection(self): """ target: test delete load collection release partition @@ -7446,8 +7434,8 @@ class TestCollectionLoadOperation(TestcaseBase): partition_w2.load() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 100}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -7457,7 +7445,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 100}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_flush_load_partition_release_collection(self): """ target: test delete load collection release partition @@ -7491,7 +7479,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_flush_load_partition_drop_partition(self): """ target: test delete load collection release partition @@ -7527,7 +7515,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not found'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_flush_load_collection_drop_partition(self): """ target: test delete load collection release partition @@ -7562,8 +7550,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not found'}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24039 #24042") + @pytest.mark.tags(CaseLabel.L2) def test_load_collection_flush_release_partition(self): """ target: test delete load collection release partition @@ -7602,7 +7589,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L2) def test_load_partition_flush_release_collection(self): """ target: test delete load collection release partition @@ -7638,8 +7625,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24048") + @pytest.mark.tags(CaseLabel.L2) def test_load_collection_flush_release_partition(self): """ target: test delete load collection release partition @@ -7674,8 +7660,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not found'}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24039") + @pytest.mark.tags(CaseLabel.L2) def test_load_collection_release_partition_flush(self): """ target: test delete load collection release partition @@ -7698,8 +7683,8 @@ class TestCollectionLoadOperation(TestcaseBase): collection_w.flush() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 100}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.check_search_results, @@ -7709,8 +7694,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #23532") + @pytest.mark.tags(CaseLabel.L2) def test_load_collection_release_collection_flush(self): """ target: test delete load collection release partition @@ -7747,7 +7731,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 100}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L1) def test_load_partition_release_collection_flush(self): """ target: test delete load collection release partition @@ -7781,7 +7765,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) - @pytest.mark.tags(CaseLabel.L3) + @pytest.mark.tags(CaseLabel.L1) def test_load_partition_drop_partition_flush(self): """ target: test delete load collection release partition @@ -7816,8 +7800,7 @@ class TestCollectionLoadOperation(TestcaseBase): check_task=CheckTasks.err_res, check_items={ct.err_code: 1, ct.err_msg: 'not found'}) - @pytest.mark.tags(CaseLabel.L3) - # @pytest.mark.xfail(reason="issue #24040") + @pytest.mark.tags(CaseLabel.L2) def test_load_release_collection_multi_times(self): """ target: test load and release multiple times @@ -7836,8 +7819,8 @@ class TestCollectionLoadOperation(TestcaseBase): partition_w2.load() # search on collection, partition1, partition2 collection_w.search(vectors[:1], field_name, default_search_params, 200, - check_task=CheckTasks.err_res, - check_items={ct.err_code: 1, ct.err_msg: 'not loaded'}) + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 100}) collection_w.search(vectors[:1], field_name, default_search_params, 200, partition_names=[partition_w1.name], check_task=CheckTasks.err_res, @@ -7846,3 +7829,68 @@ class TestCollectionLoadOperation(TestcaseBase): partition_names=[partition_w2.name], check_task=CheckTasks.check_search_results, check_items={"nq": 1, "limit": 100}) + + @pytest.mark.tags(CaseLabel.L2) + def test_load_collection_release_all_partitions(self): + """ + target: test load and release all partitions + method: 1. create a collection and 2 partitions + 2. load collection and release all partitions + 3. search + expected: No exception + """ + # init the collection + collection_w = self.init_collection_general(prefix, True, 200, partition_num=1, is_index=False)[0] + partition_w1, partition_w2 = collection_w.partitions + collection_w.create_index(default_search_field, default_index_params) + # load and release + collection_w.load() + partition_w1.release() + partition_w2.release() + # search on collection + collection_w.search(vectors[:1], field_name, default_search_params, 200, + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 0}) + + @pytest.mark.tags(CaseLabel.L2) + @pytest.mark.xfail(reason="issue #24446") + def test_search_load_collection_create_partition(self): + """ + target: test load collection and create partition and search + method: 1. create a collection and 2 partitions + 2. load collection and create a partition + 3. search + expected: No exception + """ + # init the collection + collection_w = self.init_collection_general(prefix, True, 200, partition_num=1, is_index=False)[0] + partition_w1, partition_w2 = collection_w.partitions + collection_w.create_index(default_search_field, default_index_params) + # load and release + collection_w.load() + partition_w3 = collection_w.create_partition("_default3")[0] + # search on collection + collection_w.search(vectors[:1], field_name, default_search_params, 200, + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 200}) + + @pytest.mark.tags(CaseLabel.L2) + def test_search_load_partition_create_partition(self): + """ + target: test load partition and create partition and search + method: 1. create a collection and 2 partitions + 2. load partition and create a partition + 3. search + expected: No exception + """ + # init the collection + collection_w = self.init_collection_general(prefix, True, 200, partition_num=1, is_index=False)[0] + partition_w1, partition_w2 = collection_w.partitions + collection_w.create_index(default_search_field, default_index_params) + # load and release + partition_w1.load() + partition_w3 = collection_w.create_partition("_default3")[0] + # search on collection + collection_w.search(vectors[:1], field_name, default_search_params, 200, + check_task=CheckTasks.check_search_results, + check_items={"nq": 1, "limit": 100})