milvus/core/src/query/BinaryQuery.h
yukun df8e64ea42
Structured index support (#2573)
* Add ValidateBooleanQuery check

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Add test_hybrid_collection cases

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* CreatedStructuredIndex implementation

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Add attr_type in DefaultAttrIndexFormat

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Add CreateHybridIndex sdk

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Fix LoadAttr

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Reconstruct CreateStructuredIndex code

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Fix CreateStructuredIndex bugs

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Fix merge problems

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* add changelog

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Fix gpu version compile bug

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Fix RpcHandlerTest.HYBRID_TEST bug

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Fix test_web bug

Signed-off-by: fishpenguin <kun.yu@zilliz.com>

* Remove hybrid test cases

Signed-off-by: fishpenguin <kun.yu@zilliz.com>
2020-06-17 02:00:39 +00:00

42 lines
1.2 KiB
C++

// Copyright (C) 2019-2020 Zilliz. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software distributed under the License
// is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
// or implied. See the License for the specific language governing permissions and limitations under the License.
#pragma once
#include <memory>
#include <vector>
#include "BooleanQuery.h"
namespace milvus {
namespace query {
BinaryQueryPtr
ConstructBinTree(std::vector<BooleanQueryPtr> clauses, QueryRelation relation, uint64_t idx);
Status
ConstructLeafBinTree(std::vector<LeafQueryPtr> leaf_clauses, BinaryQueryPtr binary_query, uint64_t idx);
Status
GenBinaryQuery(BooleanQueryPtr clause, BinaryQueryPtr& binary_query);
uint64_t
BinaryQueryHeight(BinaryQueryPtr& binary_query);
Status
ValidateBooleanQuery(BooleanQueryPtr& boolean_query);
bool
ValidateBinaryQuery(BinaryQueryPtr& binary_query);
} // namespace query
} // namespace milvus