[
https://issues.apache.org/jira/browse/THRIFT-5862?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sylwester Lachiewicz closed THRIFT-5862.
----------------------------------------
Resolution: Won't Fix
Not pursued: the project took the opposite approach, binding the read budget to
the frame that carries the message
([THRIFT-6165|https://issues.apache.org/jira/browse/THRIFT-6165]) and limiting
SASL frames by maxFrameSize, rather than enforcing the limit only at the
endpoint. The PR ([PR #3127|https://github.com/apache/thrift/pull/3127]) was
closed by its author. If the Hive "MaxMessageSize reached" error still occurs
on 0.25.0, please open a new issue with the transport stack.
> Validate the message size at the endpoint transport only
> --------------------------------------------------------
>
> Key: THRIFT-5862
> URL: https://issues.apache.org/jira/browse/THRIFT-5862
> Project: Thrift
> Issue Type: Improvement
> Components: Java - Library
> Reporter: Zhihua Deng
> Priority: Major
> Time Spent: 1h 40m
> Remaining Estimate: 0h
>
> In a chain of Thrift transports, currently every transport holds, updates and
> checks the knownMessageSize based on the bytes fed, however this is not
> straightforward and confused somehow. If one of transport changes the limit
> after the initialization, the knownMessageSize still remains the old until a
> reset, and if the chain only has TSocket, then it doesn't even check the
> limit.
> We should have an endpoint transport in a chain which gets fed from external
> source, so it's more reasonable to validate the limit here instead of all the
> downstream transports.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)