Skip to content

Commit

Permalink
Test arbiters using YQL transactions with a pipe cache bugfix
Browse files Browse the repository at this point in the history
  • Loading branch information
snaury committed May 15, 2024
1 parent 18ea57a commit b701f86
Show file tree
Hide file tree
Showing 3 changed files with 494 additions and 2 deletions.
6 changes: 5 additions & 1 deletion ydb/core/tablet/tablet_pipe_client_cache.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -183,13 +183,17 @@ namespace NTabletPipe {
}

private:
void MoveToPool(ui64 tabletId, const TClientCacheEntry& currentClient) {
void MoveToPool(ui64 tabletId, TClientCacheEntry& currentClient) {
TClientCacheEntry* insertedClient;
if (!PoolContainer->Insert(tabletId, currentClient, insertedClient)) {
Y_DEBUG_ABORT_UNLESS(!insertedClient->Client);
*insertedClient = currentClient;
}

// Note: client was moved to pool, make sure it's not closed by
// the eviction callback
currentClient.Client = {};

Container->Erase(tabletId);
}

Expand Down
2 changes: 1 addition & 1 deletion ydb/core/tx/datashard/datashard_outreadset.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ void TOutReadSets::ResendAll(const TActorContext& ctx) {
}
ui64 seqNo = rs.first;
ui64 target = rs.second.To;
Self->ResendReadSetQueue.Progress(rs.first, ctx);
Self->ResendReadSetQueue.Progress(seqNo, ctx);
pendingPipeTrackerCommands.AttachTablet(seqNo, target);
}
pendingPipeTrackerCommands.Apply(Self->ResendReadSetPipeTracker, ctx);
Expand Down
Loading

0 comments on commit b701f86

Please sign in to comment.