accumulo
accumulo copied to clipboard
Deprecate and remove server specific thrift max message size properties
In #3737 I realized that:
- The client code uses a max message size of Integer.MAX_VALUE
- The server code may use a specific property for max message size, that falls back to the general max message size property if it doesn't exist. However, since the server specific properties have default values, they exist in the configuration.
- The max message size is enforced on READ and thrift allows you to write data larger than max message size. So, if a client sends a large mutation to the server, then it will fail on the server. Likewise, if the server sends a large mutation to the client, it will blow up on the client.
The user configuration for this is too confusing, I think it would be good to remove all of the server specific max message size properties and just use one with a large default value. We should consider whether or not the client should continue to use Integer.MAX_VALUE or whether it should use this new single property value so that the client and server are the same.
There might be downsides, but I'm leaning towards just making them accept up to Integer.MAX_VALUE and get rid of all of the config for this. I think the constraint might be hurting more than helping in any way.