Merge pull request #105611 from ClickHouse/backport/26.3/103148

Backport #103148 to 26.3: Fix backward compatibility break in sendProgress for INSERT queries
This commit is contained in:
Nikita Fomichev
2026-05-22 12:35:54 +02:00
committed by GitHub
4 changed files with 6 additions and 7 deletions
+3 -1
View File
@@ -125,6 +125,8 @@ static constexpr auto DBMS_MIN_REVISION_WITH_REPLICATED_SERIALIZATION = 54482;
static constexpr auto DBMS_MIN_REVISION_WITH_NULLABLE_SPARSE_SERIALIZATION = 54483;
static constexpr auto DBMS_MIN_PROTOCOL_VERSION_WITH_PROGRESS_IN_ASYNC_INSERT = 54484;
/// Version of ClickHouse TCP protocol.
///
@@ -133,5 +135,5 @@ static constexpr auto DBMS_MIN_REVISION_WITH_NULLABLE_SPARSE_SERIALIZATION = 544
/// NOTE: DBMS_TCP_PROTOCOL_VERSION has nothing common with VERSION_REVISION,
/// later is just a number for server version (one number instead of commit SHA)
/// for simplicity (sometimes it may be more convenient in some use cases).
static constexpr auto DBMS_TCP_PROTOCOL_VERSION = 54483;
static constexpr auto DBMS_TCP_PROTOCOL_VERSION = 54484;
}
+2 -2
View File
@@ -1395,7 +1395,8 @@ void TCPHandler::processInsertQuery(QueryState & state)
{
std::lock_guard lock(*callback_mutex);
sendProgress(state);
if (client_tcp_protocol_version >= DBMS_MIN_PROTOCOL_VERSION_WITH_PROGRESS_IN_ASYNC_INSERT)
sendProgress(state);
sendInsertProfileEvents(state);
}
return;
@@ -1419,7 +1420,6 @@ void TCPHandler::processInsertQuery(QueryState & state)
}
std::lock_guard lock(*callback_mutex);
sendProgress(state);
sendInsertProfileEvents(state);
}
+1 -1
View File
@@ -7,7 +7,7 @@ cluster = ClickHouseCluster(__file__)
node_oldest = cluster.add_instance(
"node_oldest",
image="clickhouse/clickhouse-server",
tag="25.12",
tag=CLICKHOUSE_CI_MIN_TESTED_VERSION,
with_installed_binary=True,
main_configs=["configs/config.d/test_cluster.xml"],
)
@@ -254,9 +254,6 @@ def insertValidLowCardinalityRow():
# Fin block
sendEmptyBlock(s)
assertPacket(readVarUInt(s), 3) # Progress
readProgress(s)
assertPacket(readVarUInt(s), 5) # End of stream
s.close()