You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2010/10/19 22:50:03 UTC
svn commit: r1024408 - in /lucene/dev/trunk/lucene: CHANGES.txt
src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java
Author: uschindler
Date: Tue Oct 19 20:50:02 2010
New Revision: 1024408
URL: http://svn.apache.org/viewvc?rev=1024408&view=rev
Log:
LUCENE-2556: Improve memory usage after cloning TermAttribute
Modified:
lucene/dev/trunk/lucene/CHANGES.txt
lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java
Modified: lucene/dev/trunk/lucene/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/CHANGES.txt?rev=1024408&r1=1024407&r2=1024408&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/CHANGES.txt (original)
+++ lucene/dev/trunk/lucene/CHANGES.txt Tue Oct 19 20:50:02 2010
@@ -745,6 +745,9 @@ Optimizations
* LUCENE-2098: Improve the performance of BaseCharFilter, especially for
large documents. (Robin Wojciki, Koji Sekiguchi, Robert Muir)
+* LUCENE-2556: Improve memory usage after cloning (Char)TermAttribute.
+ (Adriano Crestani via Uwe Schindler)
+
Build
* LUCENE-2124: Moved the JDK-based collation support from contrib/collation
Modified: lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java?rev=1024408&r1=1024407&r2=1024408&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java (original)
+++ lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java Tue Oct 19 20:50:02 2010
@@ -203,7 +203,8 @@ public class CharTermAttributeImpl exten
public Object clone() {
CharTermAttributeImpl t = (CharTermAttributeImpl)super.clone();
// Do a deep clone
- t.termBuffer = termBuffer.clone();
+ t.termBuffer = new char[this.termLength];
+ System.arraycopy(this.termBuffer, 0, t.termBuffer, 0, this.termLength);
return t;
}