You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2006/12/02 21:11:02 UTC
svn commit: r481615 - in /tomcat:
connectors/trunk/util/java/org/apache/tomcat/util/buf/StringCache.java
container/tc5.5.x/webapps/docs/changelog.xml
Author: markt
Date: Sat Dec 2 12:11:01 2006
New Revision: 481615
URL: http://svn.apache.org/viewvc?view=rev&rev=481615
Log:
Fix bug 41057. Port Remy's patch to limit the size of cached strings.
Modified:
tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/StringCache.java
tomcat/container/tc5.5.x/webapps/docs/changelog.xml
Modified: tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/StringCache.java
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/StringCache.java?view=diff&rev=481615&r1=481614&r2=481615
==============================================================================
--- tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/StringCache.java (original)
+++ tomcat/connectors/trunk/util/java/org/apache/tomcat/util/buf/StringCache.java Sat Dec 2 12:11:01 2006
@@ -55,6 +55,8 @@
protected static int cacheSize =
Integer.parseInt(System.getProperty("tomcat.util.buf.StringCache.cacheSize", "200"));
+ protected static int maxStringSize =
+ Integer.parseInt(System.getProperty("tomcat.util.buf.StringCache.maxStringSize", "128"));
/**
* Statistics hash map for byte chunk.
@@ -210,7 +212,7 @@
// still training
if (bcCache == null) {
String value = bc.toStringInternal();
- if (byteEnabled) {
+ if (byteEnabled && (value.length() < maxStringSize)) {
// If training, everything is synced
synchronized (bcStats) {
// If the cache has been generated on a previous invocation
@@ -322,7 +324,7 @@
// still training
if (ccCache == null) {
String value = cc.toStringInternal();
- if (charEnabled) {
+ if (charEnabled && (value.length() < maxStringSize)) {
// If training, everything is synced
synchronized (ccStats) {
// If the cache has been generated on a previous invocation
Modified: tomcat/container/tc5.5.x/webapps/docs/changelog.xml
URL: http://svn.apache.org/viewvc/tomcat/container/tc5.5.x/webapps/docs/changelog.xml?view=diff&rev=481615&r1=481614&r2=481615
==============================================================================
--- tomcat/container/tc5.5.x/webapps/docs/changelog.xml (original)
+++ tomcat/container/tc5.5.x/webapps/docs/changelog.xml Sat Dec 2 12:11:01 2006
@@ -153,6 +153,10 @@
<bug>41017</bug>: Restore behaviour of MessageBytes.setString(null).
(remm/markt)
</fix>
+ <fix>
+ <bug>41057</bug>: Modify StringCache to add a configurable upper bound
+ to the length of cached strings. (remm/markt)
+ </fix>
</changelog>
</subsection>
<subsection name="Jasper">
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org