diff --git a/test/collection_filtering_test.cpp b/test/collection_filtering_test.cpp index f05c8dde..dc7e49c9 100644 --- a/test/collection_filtering_test.cpp +++ b/test/collection_filtering_test.cpp @@ -2291,111 +2291,3 @@ TEST_F(CollectionFilteringTest, NonIndexedFiltering) { ASSERT_FALSE(search_op.ok()); ASSERT_EQ("Cannot filter on non-indexed field `non_index`.", search_op.error()); } - -TEST_F(CollectionFilteringTest, FilteringTimeout) { - auto schema_json = - R"({ - "name": "Products", - "fields": [ - {"name": "points", "type": "int32"}, - {"name": "points_string", "type": "string"}, - {"name": "embedding", "type":"float[]", "embed":{"from": ["points_string"], "model_config": {"model_name": "ts/e5-small"}}} - ] - })"_json; - EmbedderManager::set_model_dir("/tmp/typesense_test/models"); - auto collection_create_op = collectionManager.create_collection(schema_json); - ASSERT_TRUE(collection_create_op.ok()); - - auto coll1 = collection_create_op.get(); - uint32_t count = 100000; - nlohmann::json doc; - for(size_t i=0; iadd(doc.dump()).ok()); - } - - auto result_op = coll1->search("*", {}, "", {}, {}, {0}, 10, 1, FREQUENCY, {true}, 10, - spp::sparse_hash_set(), - spp::sparse_hash_set(), 10, "", 30, 5, - "", 10, {}, {}, {}, 0, - "", "", {}, 1000, true, false, true, "", false, 20); // 20 ms search cutoff - if (result_op.ok()) { - auto results = result_op.get(); - ASSERT_NE(0, results["found"]); - ASSERT_GE(count, results["found"]); - - if (count > results["found"]) { - ASSERT_TRUE(results["search_cutoff"]); - } - } else { - ASSERT_EQ(408, result_op.code()); - ASSERT_EQ("Request Timeout", result_op.error()); - } - - result_op = coll1->search("*", {}, "points:>=0", {}, {}, {0}, 10, 1, FREQUENCY, {true}, 10, - spp::sparse_hash_set(), - spp::sparse_hash_set(), 10, "", 30, 5, - "", 10, {}, {}, {}, 0, - "", "", {}, 1000, true, false, true, "", false, 20); - if (result_op.ok()) { - auto results = result_op.get(); - ASSERT_NE(0, results["found"]); - ASSERT_GE(count - 500, results["found"]); - if ((count - 500) > results["found"]) { - ASSERT_TRUE(results["search_cutoff"]); - } - } else { - ASSERT_EQ(408, result_op.code()); - ASSERT_EQ("Request Timeout", result_op.error()); - } - - result_op = coll1->search("-500", {"points_string"}, "points:>=0", {}, {}, {0}, 10, 1, FREQUENCY, {true}, 10, - spp::sparse_hash_set(), - spp::sparse_hash_set(), 10, "", 30, 5, - "", 10, {}, {}, {}, 0, - "", "", {}, 1000, true, false, true, "", false, 20); - if (result_op.ok()) { - auto results =result_op.get(); - ASSERT_NE(0, results["found"]); - ASSERT_GE(count - 1, results["found"]); - if ((count - 1) > results["found"]) { - ASSERT_TRUE(results["search_cutoff"]); - } - } else { - ASSERT_EQ(408, result_op.code()); - ASSERT_EQ("Request Timeout", result_op.error()); - } - - result_op = coll1->search("500", {"points_string", "embedding"}, "points:>=0", {}, {}, {0}, 10, 1, FREQUENCY, {true}, 10, - spp::sparse_hash_set(), spp::sparse_hash_set(), 10, "", 30, 5, - "", 10, {}, {}, {}, 0, - "", "", {}, 1000, true, false, true, "", false, 20); - if (result_op.ok()) { - auto results = result_op.get(); - ASSERT_NE(0, results["found"]); - ASSERT_GE(10, results["found"]); - if (10 > results["found"]) { - ASSERT_TRUE(results["search_cutoff"]); - } - } else { - ASSERT_EQ(408, result_op.code()); - ASSERT_EQ("Request Timeout", result_op.error()); - } - - result_op = coll1->search("0", {"points_string"}, "points:>=0", {}, {}, {0}, 10, 1, FREQUENCY, {true}, 10, - spp::sparse_hash_set(), spp::sparse_hash_set(), 10, "", 30, 5, - "", 10, {}, {}, {}, 0, - "", "", {}, 1000, true, false, true, "", false, 20); - if (result_op.ok()) { - auto results = result_op.get(); - ASSERT_NE(0, results["found"]); - ASSERT_GE(10000, results["found"]); - if (10000 > results["found"]) { - ASSERT_TRUE(results["search_cutoff"]); - } - } else { - ASSERT_EQ(408, result_op.code()); - ASSERT_EQ("Request Timeout", result_op.error()); - } -}