You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sh...@apache.org on 2015/08/25 18:37:34 UTC

svn commit: r1697727 - in /lucene/dev/branches/branch_5x: ./ solr/ solr/CHANGES.txt solr/solrj/ solr/solrj/src/java/org/apache/solr/common/util/JavaBinCodec.java

Author: shalin
Date: Tue Aug 25 16:37:33 2015
New Revision: 1697727

URL: http://svn.apache.org/r1697727
Log:
SOLR-7971: Reduce memory allocated by JavaBinCodec to encode large strings by an amount equal to the string.length()

Modified:
    lucene/dev/branches/branch_5x/   (props changed)
    lucene/dev/branches/branch_5x/solr/   (props changed)
    lucene/dev/branches/branch_5x/solr/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/branch_5x/solr/solrj/   (props changed)
    lucene/dev/branches/branch_5x/solr/solrj/src/java/org/apache/solr/common/util/JavaBinCodec.java

Modified: lucene/dev/branches/branch_5x/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/solr/CHANGES.txt?rev=1697727&r1=1697726&r2=1697727&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/solr/CHANGES.txt (original)
+++ lucene/dev/branches/branch_5x/solr/CHANGES.txt Tue Aug 25 16:37:33 2015
@@ -88,6 +88,10 @@ Optimizations
   are more efficient especially when cluster has a mix of collections in stateFormat=1
   and stateFormat=2. (Scott Blum, shalin)
 
+* SOLR-7971: Reduce memory allocated by JavaBinCodec to encode large strings by an amount
+  equal to the string.length().
+  (yonik, Steve Rowe, shalin)
+
 Other Changes
 ----------------------
 

Modified: lucene/dev/branches/branch_5x/solr/solrj/src/java/org/apache/solr/common/util/JavaBinCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/solr/solrj/src/java/org/apache/solr/common/util/JavaBinCodec.java?rev=1697727&r1=1697726&r2=1697727&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/solr/solrj/src/java/org/apache/solr/common/util/JavaBinCodec.java (original)
+++ lucene/dev/branches/branch_5x/solr/solrj/src/java/org/apache/solr/common/util/JavaBinCodec.java Tue Aug 25 16:37:33 2015
@@ -614,7 +614,7 @@ public class JavaBinCodec {
       return;
     }
     int end = s.length();
-    int maxSize = end * 4;
+    int maxSize = end * 3; // 3 is enough, see SOLR-7971
     if (bytes == null || bytes.length < maxSize) bytes = new byte[maxSize];
     int sz = ByteUtils.UTF16toUTF8(s, 0, end, bytes, 0);