https://bz.apache.org/bugzilla/show_bug.cgi?id=69545

--- Comment #10 from Aravinda <aravindg...@gmail.com> ---
Sorry Correcting my earlier message.
Its working in the blocking mode and not working consistently in the
non-blocking mode. 

Is there a possibility it is considering only the chunk of data in the buffer
(in non blocking mode) and the available is >0 and we are getting CR or LF and
its not reading the remaining chunks. Am not able reproduce in local but this
tomcat code fails 60% of the requests when its deployed and Openshift platform. 
We reverted to use 10.1.28 version of embed tomcat instead and its work
absolutely fine.

"For the blocking mode, this is working fine. 
The issue is happening in the spring cloud gateway application(non blocking
mode) which will just delegate the request to the downstream application after
some processing like authentication. The downstream application executes in
blocking mode. If we directly call the downstream application with the same
request its working fine.


Do we have the below code in the blocking mode too? looks like its setting
available = 0 even though the all the chunks reading/entire request body is not
read.




        if (available == 1 && parseState == ParseState.CHUNK_BODY_CRLF) {
            // Either just the CR or just the LF are left in the buffer. There
is no data to read.
            available = 0;
        } else if (available == 2 && !crFound && parseState ==
ParseState.CHUNK_BODY_CRLF) {
            // Just CRLF is left in the buffer. There is no data to read.
            available = 0;
        }"

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to