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

            Bug ID: 69539
           Summary: Zero content length can be return with many concurrent
                    requests
           Product: Tomcat 11
           Version: unspecified
          Hardware: PC
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: richard.ev...@blueallegro.net
  Target Milestone: -------

Created attachment 39970
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=39970&action=edit
test case submitting multiple requests to fill cache

Send many (over 100) concurrent GET requests for different resources which are
sized just below cacheObjectMaxSize.

The requests all succeed with status 200 but a number return with

content-length: 0

in the response.  A wild guess is that the cache is full with objects being
used to service requests and a new request can therefore not fit in the cache.

If caching is disabled or the cache size increased, the problem goes away.  
Observed with Tomcat 11.0.2 and 10.1.34 on Windows 11.

Reproduce by making a test war file with commands like:

dd if=/dev/random of=r1 bs=1024 count=500
mkdir test
cd test
(x=1; while [ $x -le 120 ]; do cp ../r1 data$x.bin; x=$(expr $x + 1); done)
zip -r ../test.war .

This will make a war file with data1.bin to data120.bin

Deploy the war file to tomcat on Windows and then run the attached client code
with URL (for example http://localhost:8080/test) as argument.

-- 
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