You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ds...@apache.org on 2015/03/11 18:54:36 UTC
svn commit: r1665951 - in /lucene/dev/branches/branch_5x: ./ lucene/
lucene/spatial/ lucene/spatial/src/java/org/apache/lucene/spatial/prefix/
solr/ solr/core/ solr/core/src/test/org/apache/solr/handler/
Author: dsmiley
Date: Wed Mar 11 17:54:35 2015
New Revision: 1665951
URL: http://svn.apache.org/r1665951
Log:
LUCENE-4942: Fix BytesRefIteratorTokenStream's attribute clone method.
Modified:
lucene/dev/branches/branch_5x/ (props changed)
lucene/dev/branches/branch_5x/lucene/ (props changed)
lucene/dev/branches/branch_5x/lucene/spatial/ (props changed)
lucene/dev/branches/branch_5x/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/BytesRefIteratorTokenStream.java
lucene/dev/branches/branch_5x/solr/ (props changed)
lucene/dev/branches/branch_5x/solr/core/ (props changed)
lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/handler/FieldAnalysisRequestHandlerTest.java
Modified: lucene/dev/branches/branch_5x/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/BytesRefIteratorTokenStream.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/BytesRefIteratorTokenStream.java?rev=1665951&r1=1665950&r2=1665951&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/BytesRefIteratorTokenStream.java (original)
+++ lucene/dev/branches/branch_5x/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/BytesRefIteratorTokenStream.java Wed Mar 11 17:54:35 2015
@@ -87,7 +87,9 @@ class BytesRefIteratorTokenStream extend
@Override
public BRTermToBytesRefAttributeImpl clone() {
- final BRTermToBytesRefAttributeImpl clone = (BRTermToBytesRefAttributeImpl) super.clone();
+ // super.clone won't work since we need a new BytesRef reference and it's nice to have it final. The superclass
+ // has no state to copy anyway.
+ final BRTermToBytesRefAttributeImpl clone = new BRTermToBytesRefAttributeImpl();
clone.setBytesRef(BytesRef.deepCopyOf(bytes));
return clone;
}
Modified: lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/handler/FieldAnalysisRequestHandlerTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/handler/FieldAnalysisRequestHandlerTest.java?rev=1665951&r1=1665950&r2=1665951&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/handler/FieldAnalysisRequestHandlerTest.java (original)
+++ lucene/dev/branches/branch_5x/solr/core/src/test/org/apache/solr/handler/FieldAnalysisRequestHandlerTest.java Wed Mar 11 17:54:35 2015
@@ -31,6 +31,8 @@ import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
+import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
/**
@@ -423,6 +425,12 @@ public class FieldAnalysisRequestHandler
((NamedList)result.get("field_types").get("location_rpt")).get("index");
List<NamedList> tokenList = tokens.get("org.apache.lucene.spatial.prefix.BytesRefIteratorTokenStream");
- assertTrue( tokenList.get(0).get("text").toString().startsWith("s") );
+
+ List<String> vals = new ArrayList<>(tokenList.size());
+ for(NamedList v : tokenList) {
+ vals.add( (String)v.get("text") );
+ }
+ Collections.sort(vals);
+ assertEquals( "[s, s7, s7w, s7w1+, s9, s9v, s9v2+, sp, spp, spp5+, sv, svk, svk6+]", vals.toString() );
}
}