we stop reading the socket once we hit max buffer size so we don't overflow memory. it was put in when a buggy client cause the server to think it was getting a 1G packet and ran out of memory trying to allocate memory for it. in theory we could read in the data and just drop it on the floor. this would allow us to get to the next packet, but really this is a sanity check. if the packets are coming in that big, the client is insane, so we need to drop them.
ben On Thu, Aug 23, 2018 at 11:01 PM Karan Mehta <karanmeht...@gmail.com> wrote: > > Hello everyone, > > Why do we close the clientCnxn whenever a client sends a request which > payload larger than jute max buffer size? (and similar for client as well) > > Is it a security issue if we send a relevant KeeperException instead? Even > more, we send the parameter value to the client and client can chunk up > request accordingly? If not, can somebody elaborate on the reason. > > Thanks > Karan