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

--- Comment #4 from Gavin.peng <ronxin...@163.com> ---
Thanks Mark Thomas 's help ,the cache size exceed shown in the attachment is
tomcat6,the default cache size is -1 in tomcat6,so has many request processor
cached 

the tomcat7/8/9 the default cache is is 200,may be the size of the cache may
exceed the configured size slightly (as per the comment),but if concurrent
request is too many at a moment,the cache is also exceed the configured size

the code is flow of tomcat9.0.37:


@SuppressWarnings("sync-override") // Size may exceed cache size a bit
 @Override
 public boolean push(Processor processor) {
            int cacheSize = handler.getProtocol().getProcessorCache();
            boolean offer = cacheSize == -1 ? true : size.get() < cacheSize;
            //avoid over growing our cache or add after we have stopped
            boolean result = false;
            if (offer) {
                result = super.push(processor);
                if (result) {
                    size.incrementAndGet();
                }
            }
            if (!result) handler.unregister(processor);
            return result;
 }

may be override the method of push at will?,we upgrade tomcat to tomcat9

thanks

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