[ 
https://issues.apache.org/jira/browse/ACCUMULO-2367?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Josh Elser updated ACCUMULO-2367:
---------------------------------
    Fix Version/s:     (was: 1.7.0)
                   1.8.0

> Revisit thrift settings
> -----------------------
>
>                 Key: ACCUMULO-2367
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-2367
>             Project: Accumulo
>          Issue Type: Task
>          Components: gc, master, trace, tserver
>            Reporter: John Vines
>             Fix For: 1.8.0
>
>
> Related to ACCUMULO-2360 and ACCUMULO-2352.
> There are 2 thrift options in play that we use with the max message size (one 
> introduced under 2360). The new setting is used for reading chunks of data of 
> the network. Specifically, it gets a size, allocates a buffer, and then reads 
> the remainder of that chunk into that buffer. If it gets garbage data that is 
> a positive int, it will allocate that data.
> It is then on top of that layer where it will reassemble frames 
> (TFramedTransport). This is where we had the old setting. Specifically, it 
> makes sure that really large thrift calls get rejected (with a max message 
> size of 1g, the default, I could send a create table request up to 1g without 
> it being outright rejected). This frame consists of smaller chunks, so the 
> setting in the first paragraph isn't in play.
> What this means is that, contrary to the logic in 2360, we should have two 
> settings. The former, I believe, it just used to handle noise on the network 
> without breaking things. And the size of chunks things get written in, but 
> I'm not quite sure as I couldn't find the opposing code for the write. The 
> latter is used for enforcing decent sized requests. So we should probably 
> have a single value for all lowest level thrift pools (MAX_BUFFER_SIZE), but 
> have different knobs for each service because the tserver will get the 
> largest frames (mutations) while the master, gc, and tracer expect 
> substantially smaller requests.
> Also, I think the tracer is vulnerable to 2360 as well, since it seems to 
> have no frame size limiting.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to