aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Drynkin <robdrynkin@ydb.tech>2025-03-14 13:19:08 +0100
committerGitHub <noreply@github.com>2025-03-14 13:19:08 +0100
commit2bcfa98fde6424e45d5f162360b439e34cc5c45a (patch)
tree990f04bc786e23ce1f269f30cf01612d5eb1ee1c
parent33b6a2efcaac6bd3f6e668451f51d26949604737 (diff)
downloadydb-2bcfa98fde6424e45d5f162360b439e34cc5c45a.tar.gz
Add events to upload rows span (#15709)
-rw-r--r--ydb/core/tx/tx_proxy/upload_rows_common_impl.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/ydb/core/tx/tx_proxy/upload_rows_common_impl.h b/ydb/core/tx/tx_proxy/upload_rows_common_impl.h
index 171ac8690e..aa27442c7f 100644
--- a/ydb/core/tx/tx_proxy/upload_rows_common_impl.h
+++ b/ydb/core/tx/tx_proxy/upload_rows_common_impl.h
@@ -575,6 +575,8 @@ private:
// TODO: check all params;
// Cerr << *Request->GetProtoRequest() << Endl;
+ Span && Span.Event("ResolveTable", {{"table", table}});
+
AuditContextStart();
TAutoPtr<NSchemeCache::TSchemeCacheNavigate> request(new NSchemeCache::TSchemeCacheNavigate());
@@ -605,6 +607,7 @@ private:
}
void Handle(TEvTxProxySchemeCache::TEvNavigateKeySetResult::TPtr& ev, const TActorContext& ctx) {
+ Span && Span.Event("DataSerialization");
const NSchemeCache::TSchemeCacheNavigate& request = *ev->Get()->Request;
Y_ABORT_UNLESS(request.ResultSet.size() == 1);
@@ -928,6 +931,7 @@ private:
}
void ResolveShards(const NActors::TActorContext& ctx) {
+ Span && Span.Event("ResolveShards");
if (GetRows().empty()) {
// We have already resolved the table and know it exists
// No reason to resolve table range as well
@@ -1018,6 +1022,7 @@ private:
}
void MakeShardRequests(const NActors::TActorContext& ctx) {
+ Span && Span.Event("MakeShardRequests", {{"rows", long(GetRows().size())}});
const auto* keyRange = GetKeyRange();
Y_ABORT_UNLESS(!keyRange->GetPartitions().empty());
@@ -1105,6 +1110,7 @@ private:
}
TBase::Become(&TThis::StateWaitResults);
+ Span && Span.Event("WaitResults", {{"shardRequests", long(shardRequests.size())}});
// Sanity check: don't break when we don't have any shards for some reason
return ReplyIfDone(ctx);
@@ -1149,6 +1155,8 @@ private:
ui64 shardId = shardResponse.GetTabletID();
+ Span && Span.Event("TEvUploadRowsResponse", {{"shardId", long(shardId)}});
+
LOG_DEBUG_S(ctx, NKikimrServices::RPC_REQUEST, "Upload rows: got "
<< NKikimrTxDataShard::TError::EKind_Name((NKikimrTxDataShard::TError::EKind)shardResponse.GetStatus())
<< " from shard " << shardResponse.GetTabletID());
@@ -1188,6 +1196,8 @@ private:
ui64 shardId = record.GetTabletID();
ui64 seqNo = record.GetSeqNo();
+ Span && Span.Event("TEvOverloadReady", {{"shardId", long(shardId)}});
+
if (auto* state = ShardUploadRetryStates.FindPtr(shardId)) {
if (state->SentOverloadSeqNo && state->SentOverloadSeqNo == seqNo && ShardRepliesLeft.contains(shardId)) {
RetryShardRequest(shardId, state, ctx);