You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Antoine Pitrou (Jira)" <ji...@apache.org> on 2021/09/16 15:28:00 UTC
[jira] [Created] (THRIFT-5464) [C++] maxMessageSize possibly not
correctly observed in TBufferBase
Antoine Pitrou created THRIFT-5464:
--------------------------------------
Summary: [C++] maxMessageSize possibly not correctly observed in TBufferBase
Key: THRIFT-5464
URL: https://issues.apache.org/jira/browse/THRIFT-5464
Project: Thrift
Issue Type: Bug
Components: C++ - Library
Affects Versions: 0.14.2
Reporter: Antoine Pitrou
First: apologies if this is a false alarm, since I'm going by my reading of the C++ library source code.
To try to understand whether the new MaxMessageSize setting is important for our (Apache Parquet) use case, I tried to go through the C++ library source code to understand how it's used exactly. (see the message I posted in THRIFT-5237)
My understanding is that there are two main facilities for checking against the max message size:
* {{TTransport::countConsumedMessageBytes(numBytes)}} raises if {{numBytes}} is greater than the remaining message size, otherwise decrements the remaining message size by {{numBytes}}
* {{TTransport::checkReadBytesAvailable}} also raises if {{numBytes}} is greater than the remaining message size, but _doesn't_ otherwise update the remaining message size
--
This message was sent by Atlassian Jira
(v8.3.4#803005)