Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
Impala 4.2.0
-
None
-
ghx-label-4
Description
After Impala upgrade CPP thrift version to 0.16.0, we are seeing TTransportException thrown for RPC connection that is open for long time.
thrift-0.16.0 add counter to limit message size at https://github.com/apache/thrift/commit/63213c1.
The TTransportException is thrown when remainingMessageSize < numBytes, indicating that TTransport was not flushed properly.
This is presumably due to the fact that both input_ and output_ TProtocol within TAcceptQueueServer::Task has different TTransport object within them. Letting both input_ and output_to share the same TTransport object might fix the flushing mechanism and properly reset the limit counter of the shared TTransport.