Skip to content

Commit

Permalink
[optimize](short circuit) avoid set cacheId when non prepared execute (
Browse files Browse the repository at this point in the history
…apache#40525)

Only set cacheID for prepared statement excute phase, otherwise leading
to many redundant cost in BE side
  • Loading branch information
eldenmoon committed Sep 18, 2024
1 parent 5137841 commit 3dc79a5
Showing 1 changed file with 4 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -267,7 +267,10 @@ private RowBatch getNextInternal(Status status, Backend backend) throws TExcepti
if (snapshotVisibleVersions != null && !snapshotVisibleVersions.isEmpty()) {
requestBuilder.setVersion(snapshotVisibleVersions.get(0));
}
if (shortCircuitQueryContext.cacheID != null) {
// Only set cacheID for prepared statement excute phase,
// otherwise leading to many redundant cost in BE side
if (shortCircuitQueryContext.cacheID != null
&& ConnectContext.get().command == MysqlCommand.COM_STMT_EXECUTE) {
InternalService.UUID.Builder uuidBuilder = InternalService.UUID.newBuilder();
uuidBuilder.setUuidHigh(shortCircuitQueryContext.cacheID.getMostSignificantBits());
uuidBuilder.setUuidLow(shortCircuitQueryContext.cacheID.getLeastSignificantBits());
Expand Down

0 comments on commit 3dc79a5

Please sign in to comment.