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 si...@apache.org on 2010/09/01 16:34:30 UTC

svn commit: r991551 - in /lucene/java/branches/lucene_2_9: ./ contrib/ contrib/analyzers/ contrib/analyzers/common/ contrib/analyzers/smartcn/ contrib/highlighter/ contrib/highlighter/src/test/ contrib/instantiated/src/test/org/apache/lucene/store/inst...

Author: simonw
Date: Wed Sep  1 14:34:29 2010
New Revision: 991551

URL: http://svn.apache.org/viewvc?rev=991551&view=rev
Log:
LUCENE-2239: Documented NIOFSDirectory and MMapDirectory limitations due to Java NIO behavior when a Thread is interrupted while blocking on IO.

Modified:
    lucene/java/branches/lucene_2_9/   (props changed)
    lucene/java/branches/lucene_2_9/CHANGES.txt   (contents, props changed)
    lucene/java/branches/lucene_2_9/build.xml   (props changed)
    lucene/java/branches/lucene_2_9/contrib/   (props changed)
    lucene/java/branches/lucene_2_9/contrib/CHANGES.txt   (props changed)
    lucene/java/branches/lucene_2_9/contrib/analyzers/   (props changed)
    lucene/java/branches/lucene_2_9/contrib/analyzers/common/   (props changed)
    lucene/java/branches/lucene_2_9/contrib/analyzers/smartcn/   (props changed)
    lucene/java/branches/lucene_2_9/contrib/highlighter/   (props changed)
    lucene/java/branches/lucene_2_9/contrib/highlighter/src/test/   (props changed)
    lucene/java/branches/lucene_2_9/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java   (props changed)
    lucene/java/branches/lucene_2_9/src/   (props changed)
    lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/analysis/Tokenizer.java   (props changed)
    lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java   (props changed)
    lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/FSDirectory.java
    lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/MMapDirectory.java
    lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/NIOFSDirectory.java
    lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/util/AttributeSource.java   (props changed)
    lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java   (props changed)
    lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java   (props changed)
    lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestDateTools.java   (props changed)
    lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestNumberTools.java   (props changed)
    lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/index/   (props changed)
    lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java   (props changed)
    lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/util/TestAttributeSource.java   (props changed)

Propchange: lucene/java/branches/lucene_2_9/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,5 +1,5 @@
 /lucene/dev/branches/branch_3x/lucene:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_2_4:748824
 /lucene/java/branches/lucene_3_0:886275,889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk:821888,824125,826029,826385,830871,833095,833297,833886,834035,836155,881819,882672,883554,884870,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Modified: lucene/java/branches/lucene_2_9/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/java/branches/lucene_2_9/CHANGES.txt?rev=991551&r1=991550&r2=991551&view=diff
==============================================================================
--- lucene/java/branches/lucene_2_9/CHANGES.txt (original)
+++ lucene/java/branches/lucene_2_9/CHANGES.txt Wed Sep  1 14:34:29 2010
@@ -36,6 +36,12 @@ Bug fixes
 * LUCENE-2627: Fixed bug in MMapDirectory chunking when a file is an
   exact multiple of the chunk size.  (Robert Muir)
 
+Documentation
+
+* LUCENE-2239: Documented limitations in NIOFSDirectory and MMapDirectory due to
+  Java NOI behavior when a Thread is interrupted while blocking on IO.
+  (Simon Willnauer, Robert Muir)
+
 ======================= Release 2.9.3 2010-06-18 =======================
 
 Changes in backwards compatibility policy

Propchange: lucene/java/branches/lucene_2_9/CHANGES.txt
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/CHANGES.txt:941394,946651,948430,957490,984210
-/lucene/dev/trunk/lucene/CHANGES.txt:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187
+/lucene/dev/trunk/lucene/CHANGES.txt:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785
 /lucene/java/branches/lucene_3_0/CHANGES.txt:889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/CHANGES.txt:821888,834035,836155,881819,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/build.xml
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/build.xml:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/build.xml:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/build.xml:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/build.xml:889688,891211,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/build.xml:821888,834035,836155,887670,889431-889432,889579,889866,890439,891205,891209,891377,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/contrib/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/contrib:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/contrib:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/contrib:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/contrib:889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/contrib:821888,834035,836155,881819,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/contrib/CHANGES.txt
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/contrib/CHANGES.txt:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/contrib/CHANGES.txt:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/contrib/CHANGES.txt:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/contrib/CHANGES.txt:889688,891211,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/contrib/CHANGES.txt:821888,834035,836155,887670,889431-889432,889579,889866,890439,891205,891209,891377,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/contrib/analyzers/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/contrib/analyzers:941394,946651,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/contrib/analyzers:939611,940730,949288,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/contrib/analyzers:939611,940730,949288,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/contrib/analyzers:950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/contrib/analyzers:834035,836155,887670,889579,889866,890439,891205,891377,920270

Propchange: lucene/java/branches/lucene_2_9/contrib/analyzers/common/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,3 +1,3 @@
 /lucene/dev/branches/branch_3x/lucene/contrib/analyzers/common:988629,990286
-/lucene/dev/trunk/lucene/contrib/analyzers/common:990281
+/lucene/dev/trunk/lucene/contrib/analyzers/common:989785,990281
 /lucene/java/branches/lucene_3_0/contrib/analyzers/common:990293

Propchange: lucene/java/branches/lucene_2_9/contrib/analyzers/smartcn/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,3 +1,3 @@
 /lucene/dev/branches/branch_3x/lucene/contrib/analyzers/smartcn:988629,990286
-/lucene/dev/trunk/lucene/contrib/analyzers/smartcn:990281
+/lucene/dev/trunk/lucene/contrib/analyzers/smartcn:989785,990281
 /lucene/java/branches/lucene_3_0/contrib/analyzers/smartcn:990293

Propchange: lucene/java/branches/lucene_2_9/contrib/highlighter/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,3 +1,3 @@
 /lucene/dev/branches/branch_3x/lucene/contrib/highlighter:988629,990286
-/lucene/dev/trunk/lucene/contrib/highlighter:990281
+/lucene/dev/trunk/lucene/contrib/highlighter:989785,990281
 /lucene/java/branches/lucene_3_0/contrib/highlighter:990293

Propchange: lucene/java/branches/lucene_2_9/contrib/highlighter/src/test/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/contrib/highlighter/src/test:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/contrib/highlighter/src/test:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/contrib/highlighter/src/test:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/contrib/highlighter/src/test:889688,891211,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/contrib/highlighter/src/test:821888,834035,836155,887670,889431-889432,889579,889866,890439,891205,891209,891377,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,5 +1,5 @@
 /lucene/dev/branches/branch_3x/lucene/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_2_4/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:748824
 /lucene/java/branches/lucene_2_9/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:817269-818599
 /lucene/java/branches/lucene_2_9_back_compat_tests/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:818601-821336

Propchange: lucene/java/branches/lucene_2_9/src/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,3 +1,3 @@
 /lucene/dev/branches/branch_3x/lucene/src:957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src:963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src:963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src:963788,965105,984217,988638,990293

Propchange: lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/analysis/Tokenizer.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/analysis/Tokenizer.java:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/Tokenizer.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/Tokenizer.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src/java/org/apache/lucene/analysis/Tokenizer.java:889688,891211,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/java/org/apache/lucene/analysis/Tokenizer.java:821888,834035,836155,887670,889579,889866,890439,891205,891377,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:821888,834035,836155,881819,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Modified: lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/FSDirectory.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/FSDirectory.java?rev=991551&r1=991550&r2=991551&view=diff
==============================================================================
--- lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/FSDirectory.java (original)
+++ lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/FSDirectory.java Wed Sep  1 14:34:29 2010
@@ -56,7 +56,12 @@ import org.apache.lucene.index.IndexWrit
  *       href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6265734">Sun
  *       JRE bug</a> this is a poor choice for Windows, but
  *       on all other platforms this is the preferred
- *       choice.
+ *       choice. Applications using {@link Thread#interrupt()} or
+ *       <code>Future#cancel(boolean)</code> (on Java 1.5) should use
+ *       {@link SimpleFSDirectory} instead. See {@link NIOFSDirectory} java doc
+ *       for details.
+ *        
+ *        
  *
  *  <li> {@link MMapDirectory} uses memory-mapped IO when
  *       reading. This is a good choice if you have plenty
@@ -82,6 +87,11 @@ import org.apache.lucene.index.IndexWrit
  *       an important limitation to be aware of. This class supplies a
  *       (possibly dangerous) workaround mentioned in the bug report,
  *       which may fail on non-Sun JVMs.
+ *       
+ *       Applications using {@link Thread#interrupt()} or
+ *       <code>Future#cancel(boolean)</code> (on Java 1.5) should use
+ *       {@link SimpleFSDirectory} instead. See {@link MMapDirectory}
+ *       java doc for details.
  * </ul>
  *
  * Unfortunately, because of system peculiarities, there is
@@ -393,7 +403,9 @@ public class FSDirectory extends Directo
    *
    *  <p>Currently this returns {@link NIOFSDirectory}
    *  on non-Windows JREs and {@link SimpleFSDirectory}
-   *  on Windows.
+   *  on Windows. It is highly recommended that you consult the
+   *  implementation's documentation for your platform before
+   *  using this method.
    *
    * <p><b>NOTE</b>: this method may suddenly change which
    * implementation is returned from release to release, in

Modified: lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/MMapDirectory.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/MMapDirectory.java?rev=991551&r1=991550&r2=991551&view=diff
==============================================================================
--- lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/MMapDirectory.java (original)
+++ lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/MMapDirectory.java Wed Sep  1 14:34:29 2010
@@ -68,6 +68,13 @@ import org.apache.lucene.util.Constants;
  * an undocumented internal cleanup functionality.
  * {@link #UNMAP_SUPPORTED} is <code>true</code>, if the workaround
  * can be enabled (with no guarantees).
+ * <p>
+ * <b>NOTE:</b> Accessing this class either directly or
+ * indirectly from a thread while it's interrupted can close the
+ * underlying channel immediately if at the same time the thread is
+ * blocked on IO. The channel will remain closed and subsequent access
+ * to {@link MMapDirectory} will throw a {@link ClosedChannelException}. 
+ * </p>
  */
 public class MMapDirectory extends FSDirectory {
 

Modified: lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/NIOFSDirectory.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/NIOFSDirectory.java?rev=991551&r1=991550&r2=991551&view=diff
==============================================================================
--- lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/NIOFSDirectory.java (original)
+++ lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/store/NIOFSDirectory.java Wed Sep  1 14:34:29 2010
@@ -37,6 +37,17 @@ import java.nio.channels.FileChannel;
  * synchronized.  See <a
  * href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6265734">here</a>
  * for details.
+ * </p>
+ * <p>
+ * <font color="red"><b>NOTE:</b> Accessing this class either directly or
+ * indirectly from a thread while it's interrupted can close the
+ * underlying file descriptor immediately if at the same time the thread is
+ * blocked on IO. The file descriptor will remain closed and subsequent access
+ * to {@link NIOFSDirectory} will throw a {@link ClosedChannelException}. If
+ * your application uses either {@link Thread#interrupt()} or
+ * <code>Future#cancel(boolean)</code> (on Java 1.5) you should use
+ * {@link SimpleFSDirectory} in favor of {@link NIOFSDirectory}.</font>
+ * </p>
  */
 public class NIOFSDirectory extends FSDirectory {
 

Propchange: lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/util/AttributeSource.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,5 +1,5 @@
 /lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/util/AttributeSource.java:946651
-/lucene/dev/trunk/lucene/src/java/org/apache/lucene/util/AttributeSource.java:929738,932398,935522,940730,946599,949976,949997,950613,951521
+/lucene/dev/trunk/lucene/src/java/org/apache/lucene/util/AttributeSource.java:929738,932398,935522,940730,946599,949976,949997,950613,951521,989785
 /lucene/java/branches/lucene_2_4/src/java/org/apache/lucene/util/AttributeSource.java:748824
 /lucene/java/branches/lucene_3_0/src/java/org/apache/lucene/util/AttributeSource.java:886275,889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/java/org/apache/lucene/util/AttributeSource.java:821888,824125,826029,826385,830871,833095,833297,833886,834035,836155,881819,882672,883554,884870,886257,887347,887532,887670,889579,889866,890439,891189,891205,891363,894348,897672,908975,910034,910078,912407,919060,920270

Propchange: lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,5 +1,5 @@
 /lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:946651
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:929738,932398,935522,940730,946599,949976,949997,950613,951521
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:929738,932398,935522,940730,946599,949976,949997,950613,951521,989785
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:748824
 /lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:886275,889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/test/org/apache/lucene/analysis/BaseTokenStreamTestCase.java:818920,821888,824125,826029,826385,830871,833095,833297,833886,834035,836155,881819,882672,883554,884870,887347,887532,887670,889579,889866,890439,891189,891205,891363,897672,908975,910034,910078,912407,919060,920270

Propchange: lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:821888,834035,836155,881819,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestDateTools.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/document/TestDateTools.java:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/document/TestDateTools.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/document/TestDateTools.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/document/TestDateTools.java:889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/test/org/apache/lucene/document/TestDateTools.java:821888,834035,836155,881819,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestNumberTools.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/document/TestNumberTools.java:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/document/TestNumberTools.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/document/TestNumberTools.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/document/TestNumberTools.java:889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/test/org/apache/lucene/document/TestNumberTools.java:821888,834035,836155,881819,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/index/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index:941394,946651,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index:940730,949288,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index:940730,949288,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/index:950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/test/org/apache/lucene/index:834035,836155,887670,889579,889866,890439,891205,891377,920270

Propchange: lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:821888,834035,836155,881819,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270

Propchange: lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/util/TestAttributeSource.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Sep  1 14:34:29 2010
@@ -1,4 +1,4 @@
 /lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/TestAttributeSource.java:941394,946651,948430,957490,984210,988629,990286
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/util/TestAttributeSource.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,990281
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/util/TestAttributeSource.java:929738,932398,935522,938989,939611,939649,940730,946599,948082,948429,949288,949976,949997,950458,950613,951521,963781,965103,984187,989785,990281
 /lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/util/TestAttributeSource.java:889688,891211,899639,900212,908479,909401,912383,915404,940993,948090,948432,950033,950301,950474,950580,957495,963788,965105,984217,988638,990293
 /lucene/java/trunk/src/test/org/apache/lucene/util/TestAttributeSource.java:821888,834035,836155,881819,886257,887347,887532,887670,889431-889432,889579,889866,890439,891189,891205,891209,891363,891377,897672,899627,900196,908477,908975,909398,910034,910078,912407,915399,919060,920270