Skip to content

Commit e6ef235

Browse files
committed
Use OpContext trace span in Knowhere tracing
Signed-off-by: jamesgao-jpg <james.gao@zilliz.com>
1 parent ee8cbba commit e6ef235

2 files changed

Lines changed: 84 additions & 173 deletions

File tree

src/common/comp/brute_force.cc

Lines changed: 62 additions & 129 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
#include "simd/hook.h"
3636

3737
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
38-
#include "knowhere/tracer.h"
38+
#include "common/Trace.h"
3939
#endif
4040

4141
namespace knowhere {
@@ -509,19 +509,15 @@ BruteForceSearchWithBufImpl(const DataSetPtr base_dataset, const DataSetPtr quer
509509

510510
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
511511
// LCOV_EXCL_START
512-
std::shared_ptr<tracer::trace::Span> span = nullptr;
513-
if (cfg.trace_id.has_value()) {
514-
auto trace_id_str = tracer::GetIDFromHexStr(cfg.trace_id.value());
515-
auto span_id_str = tracer::GetIDFromHexStr(cfg.span_id.value());
516-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
517-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
518-
.traceFlags = static_cast<uint8_t>(cfg.trace_flags.value())};
519-
span = tracer::StartSpan("knowhere bf search with buf", &ctx);
520-
span->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
521-
span->SetAttribute(meta::TOPK, cfg.k.value());
522-
span->SetAttribute(meta::ROWS, nb);
523-
span->SetAttribute(meta::DIM, dim);
524-
span->SetAttribute(meta::NQ, nq);
512+
auto span = milvus::tracer::StartScopedSpan("knowhere bf search with buf",
513+
milvus::tracer::GetTraceSpan(op_context));
514+
const auto& span_ptr = span.Get();
515+
if (span_ptr != nullptr) {
516+
span_ptr->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
517+
span_ptr->SetAttribute(meta::TOPK, cfg.k.value());
518+
span_ptr->SetAttribute(meta::ROWS, nb);
519+
span_ptr->SetAttribute(meta::DIM, dim);
520+
span_ptr->SetAttribute(meta::NQ, nq);
525521
}
526522
// LCOV_EXCL_STOP
527523
#endif
@@ -617,14 +613,6 @@ BruteForceSearchWithBufImpl(const DataSetPtr base_dataset, const DataSetPtr quer
617613
}
618614
}
619615

620-
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
621-
// LCOV_EXCL_START
622-
if (cfg.trace_id.has_value()) {
623-
span->End();
624-
}
625-
// LCOV_EXCL_STOP
626-
#endif
627-
628616
return Status::success;
629617
}
630618

@@ -673,19 +661,15 @@ BruteForceSearchOnChunkWithBufImpl(const DataSetPtr base_dataset, const DataSetP
673661

674662
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
675663
// LCOV_EXCL_START
676-
std::shared_ptr<tracer::trace::Span> span = nullptr;
677-
if (cfg.trace_id.has_value()) {
678-
auto trace_id_str = tracer::GetIDFromHexStr(cfg.trace_id.value());
679-
auto span_id_str = tracer::GetIDFromHexStr(cfg.span_id.value());
680-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
681-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
682-
.traceFlags = static_cast<uint8_t>(cfg.trace_flags.value())};
683-
span = tracer::StartSpan("knowhere bf search [on chunk] with buf", &ctx);
684-
span->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
685-
span->SetAttribute(meta::TOPK, cfg.k.value());
686-
span->SetAttribute(meta::ROWS, num_total_vectors);
687-
span->SetAttribute(meta::DIM, dim);
688-
span->SetAttribute(meta::NQ, nq);
664+
auto span = milvus::tracer::StartScopedSpan("knowhere bf search [on chunk] with buf",
665+
milvus::tracer::GetTraceSpan(op_context));
666+
const auto& span_ptr = span.Get();
667+
if (span_ptr != nullptr) {
668+
span_ptr->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
669+
span_ptr->SetAttribute(meta::TOPK, cfg.k.value());
670+
span_ptr->SetAttribute(meta::ROWS, num_total_vectors);
671+
span_ptr->SetAttribute(meta::DIM, dim);
672+
span_ptr->SetAttribute(meta::NQ, nq);
689673
}
690674
// LCOV_EXCL_STOP
691675
#endif
@@ -951,22 +935,18 @@ BruteForceRangeSearchImpl(const DataSetPtr base_dataset, const DataSetPtr query_
951935

952936
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
953937
// LCOV_EXCL_START
954-
std::shared_ptr<tracer::trace::Span> span = nullptr;
955-
if (cfg.trace_id.has_value()) {
956-
auto trace_id_str = tracer::GetIDFromHexStr(cfg.trace_id.value());
957-
auto span_id_str = tracer::GetIDFromHexStr(cfg.span_id.value());
958-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
959-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
960-
.traceFlags = static_cast<uint8_t>(cfg.trace_flags.value())};
961-
span = tracer::StartSpan("knowhere bf range search", &ctx);
962-
span->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
963-
span->SetAttribute(meta::RADIUS, cfg.radius.value());
938+
auto span = milvus::tracer::StartScopedSpan("knowhere bf range search",
939+
milvus::tracer::GetTraceSpan(op_context));
940+
const auto& span_ptr = span.Get();
941+
if (span_ptr != nullptr) {
942+
span_ptr->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
943+
span_ptr->SetAttribute(meta::RADIUS, cfg.radius.value());
964944
if (cfg.range_filter.value() != defaultRangeFilter) {
965-
span->SetAttribute(meta::RANGE_FILTER, cfg.range_filter.value());
945+
span_ptr->SetAttribute(meta::RANGE_FILTER, cfg.range_filter.value());
966946
}
967-
span->SetAttribute(meta::ROWS, nb);
968-
span->SetAttribute(meta::DIM, dim);
969-
span->SetAttribute(meta::NQ, nq);
947+
span_ptr->SetAttribute(meta::ROWS, nb);
948+
span_ptr->SetAttribute(meta::DIM, dim);
949+
span_ptr->SetAttribute(meta::NQ, nq);
970950
}
971951
// LCOV_EXCL_STOP
972952
#endif
@@ -1138,14 +1118,6 @@ BruteForceRangeSearchImpl(const DataSetPtr base_dataset, const DataSetPtr query_
11381118
GetRangeSearchResult(result_dist_array, result_id_array, the_larger_the_closer, nq, radius, range_filter);
11391119
auto res = GenResultDataSet(nq, std::move(range_search_result));
11401120

1141-
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
1142-
// LCOV_EXCL_START
1143-
if (cfg.trace_id.has_value()) {
1144-
span->End();
1145-
}
1146-
// LCOV_EXCL_STOP
1147-
#endif
1148-
11491121
return res;
11501122
}
11511123

@@ -1171,19 +1143,15 @@ BruteForceSearchSparseWithBufImpl(const DataSetPtr base_dataset, const DataSetPt
11711143
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
11721144
// LCOV_EXCL_START
11731145
auto dim = base_dataset->GetDim();
1174-
std::shared_ptr<tracer::trace::Span> span = nullptr;
1175-
if (cfg.trace_id.has_value()) {
1176-
auto trace_id_str = tracer::GetIDFromHexStr(cfg.trace_id.value());
1177-
auto span_id_str = tracer::GetIDFromHexStr(cfg.span_id.value());
1178-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
1179-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
1180-
.traceFlags = static_cast<uint8_t>(cfg.trace_flags.value())};
1181-
span = tracer::StartSpan("knowhere bf search sparse with buf", &ctx);
1182-
span->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
1183-
span->SetAttribute(meta::TOPK, cfg.k.value());
1184-
span->SetAttribute(meta::ROWS, rows);
1185-
span->SetAttribute(meta::DIM, dim);
1186-
span->SetAttribute(meta::NQ, nq);
1146+
auto span = milvus::tracer::StartScopedSpan("knowhere bf search sparse with buf",
1147+
milvus::tracer::GetTraceSpan(op_context));
1148+
const auto& span_ptr = span.Get();
1149+
if (span_ptr != nullptr) {
1150+
span_ptr->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
1151+
span_ptr->SetAttribute(meta::TOPK, cfg.k.value());
1152+
span_ptr->SetAttribute(meta::ROWS, rows);
1153+
span_ptr->SetAttribute(meta::DIM, dim);
1154+
span_ptr->SetAttribute(meta::NQ, nq);
11871155
}
11881156
// LCOV_EXCL_STOP
11891157
#endif
@@ -1241,14 +1209,6 @@ BruteForceSearchSparseWithBufImpl(const DataSetPtr base_dataset, const DataSetPt
12411209
}
12421210
WaitAllSuccess(futs);
12431211

1244-
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
1245-
// LCOV_EXCL_START
1246-
if (cfg.trace_id.has_value()) {
1247-
span->End();
1248-
}
1249-
// LCOV_EXCL_STOP
1250-
#endif
1251-
12521212
return Status::success;
12531213
}
12541214

@@ -1307,18 +1267,14 @@ BruteForceAnnIteratorImpl(const DataSetPtr base_dataset, const DataSetPtr query_
13071267

13081268
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
13091269
// LCOV_EXCL_START
1310-
std::shared_ptr<tracer::trace::Span> span = nullptr;
1311-
if (cfg.trace_id.has_value()) {
1312-
auto trace_id_str = tracer::GetIDFromHexStr(cfg.trace_id.value());
1313-
auto span_id_str = tracer::GetIDFromHexStr(cfg.span_id.value());
1314-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
1315-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
1316-
.traceFlags = static_cast<uint8_t>(cfg.trace_flags.value())};
1317-
span = tracer::StartSpan("knowhere bf ann iterator initialization", &ctx);
1318-
span->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
1319-
span->SetAttribute(meta::ROWS, nb);
1320-
span->SetAttribute(meta::DIM, dim);
1321-
span->SetAttribute(meta::NQ, nq);
1270+
auto span = milvus::tracer::StartScopedSpan("knowhere bf ann iterator initialization",
1271+
milvus::tracer::GetTraceSpan(op_context));
1272+
const auto& span_ptr = span.Get();
1273+
if (span_ptr != nullptr) {
1274+
span_ptr->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
1275+
span_ptr->SetAttribute(meta::ROWS, nb);
1276+
span_ptr->SetAttribute(meta::DIM, dim);
1277+
span_ptr->SetAttribute(meta::NQ, nq);
13221278
}
13231279
// LCOV_EXCL_STOP
13241280
#endif
@@ -1460,13 +1416,6 @@ BruteForceAnnIteratorImpl(const DataSetPtr base_dataset, const DataSetPtr query_
14601416
return expected<std::vector<IndexNode::IteratorPtr>>::Err(Status::brute_force_inner_error, e.what());
14611417
}
14621418

1463-
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
1464-
// LCOV_EXCL_START
1465-
if (cfg.trace_id.has_value()) {
1466-
span->End();
1467-
}
1468-
// LCOV_EXCL_STOP
1469-
#endif
14701419
return vec;
14711420
}
14721421

@@ -1540,18 +1489,14 @@ BruteForceAnnIteratorOnChunkImpl(const DataSetPtr base_dataset, const DataSetPtr
15401489

15411490
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
15421491
// LCOV_EXCL_START
1543-
std::shared_ptr<tracer::trace::Span> span = nullptr;
1544-
if (cfg.trace_id.has_value()) {
1545-
auto trace_id_str = tracer::GetIDFromHexStr(cfg.trace_id.value());
1546-
auto span_id_str = tracer::GetIDFromHexStr(cfg.span_id.value());
1547-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
1548-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
1549-
.traceFlags = static_cast<uint8_t>(cfg.trace_flags.value())};
1550-
span = tracer::StartSpan("knowhere bf ann iterator initialization", &ctx);
1551-
span->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
1552-
span->SetAttribute(meta::ROWS, num_total_vectors);
1553-
span->SetAttribute(meta::DIM, dim);
1554-
span->SetAttribute(meta::NQ, nq);
1492+
auto span = milvus::tracer::StartScopedSpan("knowhere bf ann iterator initialization",
1493+
milvus::tracer::GetTraceSpan(op_context));
1494+
const auto& span_ptr = span.Get();
1495+
if (span_ptr != nullptr) {
1496+
span_ptr->SetAttribute(meta::METRIC_TYPE, cfg.metric_type.value());
1497+
span_ptr->SetAttribute(meta::ROWS, num_total_vectors);
1498+
span_ptr->SetAttribute(meta::DIM, dim);
1499+
span_ptr->SetAttribute(meta::NQ, nq);
15551500
}
15561501
// LCOV_EXCL_STOP
15571502
#endif
@@ -1749,18 +1694,14 @@ BruteForceAnnIteratorImpl<knowhere::sparse::SparseRow<float>>(const DataSetPtr b
17491694
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
17501695
// LCOV_EXCL_START
17511696
auto dim = base_dataset->GetDim();
1752-
std::shared_ptr<tracer::trace::Span> span = nullptr;
1753-
if (cfg.trace_id.has_value()) {
1754-
auto trace_id_str = tracer::GetIDFromHexStr(cfg.trace_id.value());
1755-
auto span_id_str = tracer::GetIDFromHexStr(cfg.span_id.value());
1756-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
1757-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
1758-
.traceFlags = static_cast<uint8_t>(cfg.trace_flags.value())};
1759-
span = tracer::StartSpan("knowhere bf iterator sparse", &ctx);
1760-
span->SetAttribute(meta::METRIC_TYPE, metric_str);
1761-
span->SetAttribute(meta::ROWS, rows);
1762-
span->SetAttribute(meta::DIM, dim);
1763-
span->SetAttribute(meta::NQ, nq);
1697+
auto span = milvus::tracer::StartScopedSpan("knowhere bf iterator sparse",
1698+
milvus::tracer::GetTraceSpan(op_context));
1699+
const auto& span_ptr = span.Get();
1700+
if (span_ptr != nullptr) {
1701+
span_ptr->SetAttribute(meta::METRIC_TYPE, metric_str);
1702+
span_ptr->SetAttribute(meta::ROWS, rows);
1703+
span_ptr->SetAttribute(meta::DIM, dim);
1704+
span_ptr->SetAttribute(meta::NQ, nq);
17641705
}
17651706
// LCOV_EXCL_STOP
17661707
#endif
@@ -1810,14 +1751,6 @@ BruteForceAnnIteratorImpl<knowhere::sparse::SparseRow<float>>(const DataSetPtr b
18101751
return expected<std::vector<IndexNode::IteratorPtr>>::Err(Status::brute_force_inner_error, e.what());
18111752
}
18121753

1813-
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
1814-
// LCOV_EXCL_START
1815-
if (cfg.trace_id.has_value()) {
1816-
span->End();
1817-
}
1818-
// LCOV_EXCL_STOP
1819-
#endif
1820-
18211754
return vec;
18221755
}
18231756

src/index/index.cc

Lines changed: 22 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
#include "knowhere/thread_pool.h"
2121

2222
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
23+
#include "common/Trace.h"
2324
#include "knowhere/prometheus_client.h"
24-
#include "knowhere/tracer.h"
2525
#endif
2626

2727
namespace knowhere {
@@ -160,38 +160,27 @@ Index<T>::Search(const DataSetPtr dataset, const Json& json, const BitsetView& b
160160
}
161161

162162
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
163-
const BaseConfig& b_cfg = static_cast<const BaseConfig&>(*cfg);
163+
BaseConfig& b_cfg = static_cast<BaseConfig&>(*cfg);
164164
// LCOV_EXCL_START
165-
std::shared_ptr<tracer::trace::Span> span = nullptr;
166-
if (b_cfg.trace_id.has_value()) {
167-
auto trace_id_str = tracer::GetIDFromHexStr(b_cfg.trace_id.value());
168-
auto span_id_str = tracer::GetIDFromHexStr(b_cfg.span_id.value());
169-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
170-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
171-
.traceFlags = static_cast<uint8_t>(b_cfg.trace_flags.value())};
172-
span = tracer::StartSpan("knowhere search", &ctx);
173-
span->SetAttribute(meta::METRIC_TYPE, b_cfg.metric_type.value());
174-
span->SetAttribute(meta::TOPK, b_cfg.k.value());
175-
span->SetAttribute(meta::ROWS, Count());
176-
span->SetAttribute(meta::DIM, Dim());
177-
span->SetAttribute(meta::NQ, dataset->GetRows());
165+
auto span = milvus::tracer::StartScopedSpan("knowhere search", milvus::tracer::GetTraceSpan(op_context));
166+
const auto& span_ptr = span.Get();
167+
if (span_ptr != nullptr) {
168+
span_ptr->SetAttribute(meta::METRIC_TYPE, b_cfg.metric_type.value());
169+
span_ptr->SetAttribute(meta::TOPK, b_cfg.k.value());
170+
span_ptr->SetAttribute(meta::ROWS, Count());
171+
span_ptr->SetAttribute(meta::DIM, Dim());
172+
span_ptr->SetAttribute(meta::NQ, dataset->GetRows());
178173
}
174+
auto op_context_trace_span_guard = milvus::tracer::SetTemporaryOpContextTraceSpan(op_context, span_ptr);
179175
// LCOV_EXCL_STOP
180176

181177
TimeRecorder rc("Search");
182-
bool has_trace_id = b_cfg.trace_id.has_value();
183178
auto k = cfg->k.value();
184179
auto res = this->node->SearchEmbListIfNeed(dataset, std::move(cfg), bitset, op_context);
185180
auto time = rc.ElapseFromBegin("done");
186181
time *= 0.001; // convert to ms
187182
this->node->GetSearchLatencyMetric().Observe(time);
188183
knowhere_search_topk.Observe(k);
189-
190-
// LCOV_EXCL_START
191-
if (has_trace_id) {
192-
span->End();
193-
}
194-
// LCOV_EXCL_STOP
195184
#else
196185
auto res = this->node->SearchEmbListIfNeed(dataset, std::move(cfg), bitset, op_context);
197186
#endif
@@ -264,39 +253,28 @@ Index<T>::RangeSearch(const DataSetPtr dataset, const Json& json, const BitsetVi
264253
const auto bitset = BitsetView(bitset_.data(), bitset_.size(), bitset_.get_filtered_out_num_());
265254

266255
#if defined(NOT_COMPILE_FOR_SWIG) && !defined(KNOWHERE_WITH_LIGHT)
267-
const BaseConfig& b_cfg = static_cast<const BaseConfig&>(*cfg);
256+
BaseConfig& b_cfg = static_cast<BaseConfig&>(*cfg);
268257
// LCOV_EXCL_START
269-
std::shared_ptr<tracer::trace::Span> span = nullptr;
270-
if (b_cfg.trace_id.has_value()) {
271-
auto trace_id_str = tracer::GetIDFromHexStr(b_cfg.trace_id.value());
272-
auto span_id_str = tracer::GetIDFromHexStr(b_cfg.span_id.value());
273-
auto ctx = tracer::TraceContext{.traceID = reinterpret_cast<const uint8_t*>(trace_id_str.c_str()),
274-
.spanID = reinterpret_cast<const uint8_t*>(span_id_str.c_str()),
275-
.traceFlags = static_cast<uint8_t>(b_cfg.trace_flags.value())};
276-
span = tracer::StartSpan("knowhere range search", &ctx);
277-
span->SetAttribute(meta::METRIC_TYPE, b_cfg.metric_type.value());
278-
span->SetAttribute(meta::RADIUS, b_cfg.radius.value());
258+
auto span = milvus::tracer::StartScopedSpan("knowhere range search", milvus::tracer::GetTraceSpan(op_context));
259+
const auto& span_ptr = span.Get();
260+
if (span_ptr != nullptr) {
261+
span_ptr->SetAttribute(meta::METRIC_TYPE, b_cfg.metric_type.value());
262+
span_ptr->SetAttribute(meta::RADIUS, b_cfg.radius.value());
279263
if (b_cfg.range_filter.value() != defaultRangeFilter) {
280-
span->SetAttribute(meta::RANGE_FILTER, b_cfg.range_filter.value());
264+
span_ptr->SetAttribute(meta::RANGE_FILTER, b_cfg.range_filter.value());
281265
}
282-
span->SetAttribute(meta::ROWS, Count());
283-
span->SetAttribute(meta::DIM, Dim());
284-
span->SetAttribute(meta::NQ, dataset->GetRows());
266+
span_ptr->SetAttribute(meta::ROWS, Count());
267+
span_ptr->SetAttribute(meta::DIM, Dim());
268+
span_ptr->SetAttribute(meta::NQ, dataset->GetRows());
285269
}
270+
auto op_context_trace_span_guard = milvus::tracer::SetTemporaryOpContextTraceSpan(op_context, span_ptr);
286271
// LCOV_EXCL_STOP
287272

288273
TimeRecorder rc("Range Search");
289-
bool has_trace_id = b_cfg.trace_id.has_value();
290274
auto res = this->node->RangeSearchEmbListIfNeed(dataset, std::move(cfg), bitset, op_context);
291275
auto time = rc.ElapseFromBegin("done");
292276
time *= 0.001; // convert to ms
293277
this->node->GetRangeSearchLatencyMetric().Observe(time);
294-
295-
// LCOV_EXCL_START
296-
if (has_trace_id) {
297-
span->End();
298-
}
299-
// LCOV_EXCL_STOP
300278
#else
301279
auto res = this->node->RangeSearchEmbListIfNeed(dataset, std::move(cfg), bitset, op_context);
302280
#endif

0 commit comments

Comments
 (0)