You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@lucene.apache.org by us...@apache.org on 2009/11/05 18:39:30 UTC

svn commit: r833098 - in /lucene/java/branches/lucene_2_9: ./ src/java/org/apache/lucene/search/NumericRangeQuery.java src/java/org/apache/lucene/search/SortField.java src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java

Author: uschindler
Date: Thu Nov  5 17:39:30 2009
New Revision: 833098

URL: http://svn.apache.org/viewvc?rev=833098&view=rev
Log:
Backport for a possible later 2.9.2 version: Fix de-serialization of interned field names

Modified:
    lucene/java/branches/lucene_2_9/   (props changed)
    lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/NumericRangeQuery.java
    lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/SortField.java
    lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java   (props changed)

Propchange: lucene/java/branches/lucene_2_9/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Nov  5 17:39:30 2009
@@ -1,2 +1,2 @@
 /lucene/java/branches/lucene_2_4:748824
-/lucene/java/trunk:824125,826029,826385,830871
+/lucene/java/trunk:824125,826029,826385,830871,833095

Modified: lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/NumericRangeQuery.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/NumericRangeQuery.java?rev=833098&r1=833097&r2=833098&view=diff
==============================================================================
--- lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/NumericRangeQuery.java (original)
+++ lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/NumericRangeQuery.java Thu Nov  5 17:39:30 2009
@@ -365,8 +365,14 @@
       (Boolean.valueOf(maxInclusive).hashCode()^0x733fa5fe);
   }
   
+  // field must be interned after reading from stream
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    in.defaultReadObject();
+    field = StringHelper.intern(field);
+  }
+
   // members (package private, to be also fast accessible by NumericRangeTermEnum)
-  final String field;
+  String field;
   final int precisionStep, valSize;
   final Number min, max;
   final boolean minInclusive,maxInclusive;

Modified: lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/SortField.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/SortField.java?rev=833098&r1=833097&r2=833098&view=diff
==============================================================================
--- lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/SortField.java (original)
+++ lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/SortField.java Thu Nov  5 17:39:30 2009
@@ -443,6 +443,11 @@
     return hash;
   }
 
+  // field must be interned after reading from stream
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    in.defaultReadObject();
+    field = StringHelper.intern(field);
+  }
 
   /** Returns the {@link FieldComparator} to use for
    * sorting.

Propchange: lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Nov  5 17:39:30 2009
@@ -1,2 +1,2 @@
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:748824
-/lucene/java/trunk/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:818920,824125,826029,826385,830871
+/lucene/java/trunk/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:818920,824125,826029,826385,830871,833095