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 2010/05/06 10:20:40 UTC

svn commit: r941607 [1/2] - in /lucene/dev/branches/branch_3x: ./ lucene/ lucene/backwards/src/ lucene/backwards/src/java/org/apache/lucene/search/ lucene/backwards/src/test/org/apache/lucene/ lucene/backwards/src/test/org/apache/lucene/analysis/ lucen...

Author: shaie
Date: Thu May  6 08:20:38 2010
New Revision: 941607

URL: http://svn.apache.org/viewvc?rev=941607&view=rev
Log:
LUCENE-2386: backport to 3x

Added:
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexNotFoundException.java
      - copied unchanged from r933613, lucene/dev/trunk/lucene/src/java/org/apache/lucene/index/IndexNotFoundException.java
Modified:
    lucene/dev/branches/branch_3x/   (props changed)
    lucene/dev/branches/branch_3x/lucene/   (props changed)
    lucene/dev/branches/branch_3x/lucene/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/   (props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/TestSnapshotDeletionPolicy.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/document/TestDateTools.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/document/TestNumberTools.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java   (contents, props changed)
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestCrash.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestDeletionPolicy.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexFileDeleter.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReader.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReaderReopen.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriter.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterDelete.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterReader.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing2.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestBufferedIndexInput.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestLockFactory.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestWindowsMMap.java
    lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/util/TestAttributeSource.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/build.xml   (props changed)
    lucene/dev/branches/branch_3x/lucene/contrib/   (props changed)
    lucene/dev/branches/branch_3x/lucene/contrib/CHANGES.txt   (props changed)
    lucene/dev/branches/branch_3x/lucene/contrib/highlighter/src/test/   (props changed)
    lucene/dev/branches/branch_3x/lucene/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/contrib/xml-query-parser/src/test/org/apache/lucene/xmlparser/builders/TestNumericRangeFilterBuilder.java
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/analysis/Tokenizer.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexFileDeleter.java
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexReader.java
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/SegmentInfos.java
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/store/Directory.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/document/TestDateTools.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/document/TestNumberTools.java   (props changed)
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java   (contents, props changed)
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestCrash.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReader.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReaderReopen.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestNoDeletionPolicy.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestSnapshotDeletionPolicy.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestStressIndexing.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestStressIndexing2.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/store/TestLockFactory.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/store/TestWindowsMMap.java
    lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/util/TestAttributeSource.java   (props changed)
    lucene/dev/branches/branch_3x/solr/   (props changed)
    lucene/dev/branches/branch_3x/solr/lib/commons-httpclient-3.1.jar   (props changed)
    lucene/dev/branches/branch_3x/solr/lib/jcl-over-slf4j-1.5.5.jar   (props changed)
    lucene/dev/branches/branch_3x/solr/src/common/org/apache/solr/common/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/maven/solr-core-pom.xml.template   (props changed)
    lucene/dev/branches/branch_3x/solr/src/maven/solr-solrj-pom.xml.template   (props changed)
    lucene/dev/branches/branch_3x/solr/src/solrj/org/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/test/org/apache/solr/client/   (props changed)
    lucene/dev/branches/branch_3x/solr/src/webapp/src/org/apache/solr/client/solrj/embedded/   (props changed)

Propchange: lucene/dev/branches/branch_3x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1 +1 @@
-/lucene/dev/trunk:931337,931502,932129-932131,932163,932304,932369,932374,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk:931337,931502,932129-932131,932163,932304,932369,932374,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994

Propchange: lucene/dev/branches/branch_3x/lucene/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,5 +1,5 @@
 /lucene/dev/trunk:932749
-/lucene/dev/trunk/lucene:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458:924791,924850,930201
 /lucene/java/branches/lucene_2_4:748824
 /lucene/java/branches/lucene_2_9:817269-818600,825998,829134,829881,831036,896850,909334

Modified: lucene/dev/branches/branch_3x/lucene/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/CHANGES.txt?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/CHANGES.txt (original)
+++ lucene/dev/branches/branch_3x/lucene/CHANGES.txt Thu May  6 08:20:38 2010
@@ -56,6 +56,12 @@ Changes in backwards compatibility polic
   otherwise. Returning length=0 for a non-existent file is no longer allowed. If
   you relied on that, make sure to catch the exception. (Shai Erera)
   
+* LUCENE-2386: IndexWriter no longer performs an empty commit upon new index
+  creation. Previously, if you passed an empty Directory and set OpenMode to
+  CREATE*, IndexWriter would make a first empty commit. If you need that 
+  behavior you can call writer.commit()/close() immediately after you create it.
+  (Shai Erera, Mike McCandless)
+  
 Changes in runtime behavior
 
 * LUCENE-1923: Made IndexReader.toString() produce something

Propchange: lucene/dev/branches/branch_3x/lucene/CHANGES.txt
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/CHANGES.txt:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/CHANGES.txt:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/CHANGES.txt:924791,924850,930201
 /lucene/java/branches/lucene_2_9/CHANGES.txt:896850,909334
 /lucene/java/trunk/CHANGES.txt:924483-925561

Propchange: lucene/dev/branches/branch_3x/lucene/backwards/src/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,3 +1,3 @@
-/lucene/dev/trunk/lucene/backwards/src:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/backwards/src:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/backwards/src:924850,930201
 /lucene/java/trunk/backwards/src:924781

Propchange: lucene/dev/branches/branch_3x/lucene/backwards/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/backwards/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/backwards/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/backwards/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:748824
 /lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:817269-818600,825998,829134,829881,831036

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/TestSnapshotDeletionPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/TestSnapshotDeletionPolicy.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/TestSnapshotDeletionPolicy.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/TestSnapshotDeletionPolicy.java Thu May  6 08:20:38 2010
@@ -113,7 +113,7 @@ public class TestSnapshotDeletionPolicy 
 
     SnapshotDeletionPolicy dp = new SnapshotDeletionPolicy(new KeepOnlyLastCommitDeletionPolicy());
     final IndexWriter writer = new IndexWriter(dir, new StandardAnalyzer(org.apache.lucene.util.Version.LUCENE_CURRENT), dp, IndexWriter.MaxFieldLength.UNLIMITED);
-
+    writer.commit();
     // Force frequent flushes
     writer.setMaxBufferedDocs(2);
 

Propchange: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/backwards/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:825998,829134,829881,831036

Propchange: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/document/TestDateTools.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/document/TestDateTools.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/document/TestDateTools.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/backwards/src/test/org/apache/lucene/document/TestDateTools.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/document/TestDateTools.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestDateTools.java:825998,829134,829881,831036

Propchange: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/document/TestNumberTools.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/document/TestNumberTools.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/document/TestNumberTools.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/backwards/src/test/org/apache/lucene/document/TestNumberTools.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/document/TestNumberTools.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestNumberTools.java:825998,829134,829881,831036

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java Thu May  6 08:20:38 2010
@@ -553,7 +553,7 @@ public class TestBackwardsCompatibility 
       expected = new String[] {"_0.cfs",
                                "_0_1.del",
                                "_0_1.s" + contentFieldIndex,
-                               "segments_3",
+                               "segments_2",
                                "segments.gen"};
 
       String[] actual = dir.listAll();

Propchange: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/backwards/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:825998,829134,829881,831036

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestCrash.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestCrash.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestCrash.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestCrash.java Thu May  6 08:20:38 2010
@@ -25,20 +25,24 @@ import org.apache.lucene.store.MockRAMDi
 import org.apache.lucene.store.NoLockFactory;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.index.IndexWriter;
 
 public class TestCrash extends LuceneTestCase {
 
-  private IndexWriter initIndex() throws IOException {
-    return initIndex(new MockRAMDirectory());
+  private IndexWriter initIndex(boolean initialCommit) throws IOException {
+    return initIndex(new MockRAMDirectory(), initialCommit);
   }
 
-  private IndexWriter initIndex(MockRAMDirectory dir) throws IOException {
+  private IndexWriter initIndex(MockRAMDirectory dir, boolean initialCommit) throws IOException {
     dir.setLockFactory(NoLockFactory.getNoLockFactory());
 
     IndexWriter writer  = new IndexWriter(dir, new WhitespaceAnalyzer(), IndexWriter.MaxFieldLength.UNLIMITED);
     //writer.setMaxBufferedDocs(2);
     writer.setMaxBufferedDocs(10);
     ((ConcurrentMergeScheduler) writer.getMergeScheduler()).setSuppressExceptions();
+    if (initialCommit) {
+      writer.commit();
+    }
 
     Document doc = new Document();
     doc.add(new Field("content", "aaa", Field.Store.YES, Field.Index.ANALYZED));
@@ -58,7 +62,7 @@ public class TestCrash extends LuceneTes
   }
 
   public void testCrashWhileIndexing() throws IOException {
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(true);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
     crash(writer);
     IndexReader reader = IndexReader.open(dir, false);
@@ -66,11 +70,11 @@ public class TestCrash extends LuceneTes
   }
 
   public void testWriterAfterCrash() throws IOException {
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(true);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
     dir.setPreventDoubleWrite(false);
     crash(writer);
-    writer = initIndex(dir);
+    writer = initIndex(dir, false);
     writer.close();
 
     IndexReader reader = IndexReader.open(dir, false);
@@ -78,10 +82,10 @@ public class TestCrash extends LuceneTes
   }
 
   public void testCrashAfterReopen() throws IOException {
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
     writer.close();
-    writer = initIndex(dir);
+    writer = initIndex(dir, false);
     assertEquals(314, writer.maxDoc());
     crash(writer);
 
@@ -100,7 +104,7 @@ public class TestCrash extends LuceneTes
 
   public void testCrashAfterClose() throws IOException {
     
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
 
     writer.close();
@@ -119,7 +123,7 @@ public class TestCrash extends LuceneTes
 
   public void testCrashAfterCloseNoWait() throws IOException {
     
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
 
     writer.close(false);
@@ -138,7 +142,7 @@ public class TestCrash extends LuceneTes
 
   public void testCrashReaderDeletes() throws IOException {
     
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
 
     writer.close(false);
@@ -159,7 +163,7 @@ public class TestCrash extends LuceneTes
 
   public void testCrashReaderDeletesAfterClose() throws IOException {
     
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
 
     writer.close(false);

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestDeletionPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestDeletionPolicy.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestDeletionPolicy.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestDeletionPolicy.java Thu May  6 08:20:38 2010
@@ -290,7 +290,7 @@ public class TestDeletionPolicy extends 
       writer.optimize();
       writer.close();
 
-      assertEquals(2, policy.numOnInit);
+      assertEquals(1, policy.numOnInit);
 
       // If we are not auto committing then there should
       // be exactly 2 commits (one per close above):
@@ -298,8 +298,8 @@ public class TestDeletionPolicy extends 
 
       // Test listCommits
       Collection commits = IndexReader.listCommits(dir);
-      // 1 from opening writer + 2 from closing writer
-      assertEquals(3, commits.size());
+      // 2 from closing writer
+      assertEquals(2, commits.size());
 
       Iterator it = commits.iterator();
       // Make sure we can open a reader on each commit:
@@ -357,7 +357,7 @@ public class TestDeletionPolicy extends 
     writer.close();
 
     Collection commits = IndexReader.listCommits(dir);
-    assertEquals(6, commits.size());
+    assertEquals(5, commits.size());
     IndexCommit lastCommit = null;
     Iterator it = commits.iterator();
     while(it.hasNext()) {
@@ -374,7 +374,7 @@ public class TestDeletionPolicy extends 
     writer.optimize();
     writer.close();
 
-    assertEquals(7, IndexReader.listCommits(dir).size());
+    assertEquals(6, IndexReader.listCommits(dir).size());
 
     // Now open writer on the commit just before optimize:
     writer = new IndexWriter(dir, new WhitespaceAnalyzer(), policy, IndexWriter.MaxFieldLength.LIMITED, lastCommit);
@@ -395,7 +395,7 @@ public class TestDeletionPolicy extends 
     writer.close();
 
     // Now 8 because we made another commit
-    assertEquals(8, IndexReader.listCommits(dir).size());
+    assertEquals(7, IndexReader.listCommits(dir).size());
     
     r = IndexReader.open(dir, true);
     // Not optimized because we rolled it back, and now only
@@ -465,7 +465,7 @@ public class TestDeletionPolicy extends 
       writer.optimize();
       writer.close();
 
-      assertEquals(2, policy.numOnInit);
+      assertEquals(1, policy.numOnInit);
       // If we are not auto committing then there should
       // be exactly 2 commits (one per close above):
       assertEquals(2, policy.numOnCommit);
@@ -506,7 +506,7 @@ public class TestDeletionPolicy extends 
       }
 
       assertTrue(policy.numDelete > 0);
-      assertEquals(N+1, policy.numOnInit);
+      assertEquals(N, policy.numOnInit);
       assertEquals(N+1, policy.numOnCommit);
 
       // Simplistic check: just verify only the past N segments_N's still
@@ -580,8 +580,8 @@ public class TestDeletionPolicy extends 
       // this is a commit
       writer.close();
 
-      assertEquals(2*(N+2), policy.numOnInit);
-      assertEquals(2*(N+2)-1, policy.numOnCommit);
+      assertEquals(2*(N+1)+1, policy.numOnInit);
+      assertEquals(2*(N+2), policy.numOnCommit);
 
       IndexSearcher searcher = new IndexSearcher(dir, false);
       ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;
@@ -678,8 +678,8 @@ public class TestDeletionPolicy extends 
         writer.close();
       }
 
-      assertEquals(1+3*(N+1), policy.numOnInit);
-      assertEquals(3*(N+1), policy.numOnCommit);
+      assertEquals(3*(N+1), policy.numOnInit);
+      assertEquals(3*(N+1)+1, policy.numOnCommit);
 
       IndexSearcher searcher = new IndexSearcher(dir, false);
       ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexFileDeleter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexFileDeleter.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexFileDeleter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexFileDeleter.java Thu May  6 08:20:38 2010
@@ -136,11 +136,11 @@ public class TestIndexFileDeleter extend
     copyFile(dir, "_0.cfs", "deletable");
 
     // Create some old segments file:
-    copyFile(dir, "segments_3", "segments");
-    copyFile(dir, "segments_3", "segments_2");
+    copyFile(dir, "segments_2", "segments");
+    copyFile(dir, "segments_2", "segments_1");
 
     // Create a bogus cfs file shadowing a non-cfs segment:
-    copyFile(dir, "_2.cfs", "_3.cfs");
+    copyFile(dir, "_1.cfs", "_2.cfs");
 
     String[] filesPre = dir.listAll();
 

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReader.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReader.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReader.java Thu May  6 08:20:38 2010
@@ -39,6 +39,7 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.document.FieldSelector;
 import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.document.SetBasedFieldSelector;
+import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.index.IndexReader.FieldOption;
 import org.apache.lucene.search.FieldCache;
 import org.apache.lucene.search.IndexSearcher;
@@ -474,6 +475,7 @@ public class TestIndexReader extends Luc
 
         //  add 11 documents with term : aaa
         writer  = new IndexWriter(dir, new WhitespaceAnalyzer(), true, IndexWriter.MaxFieldLength.LIMITED);
+        writer.commit();
         for (int i = 0; i < 11; i++)
         {
             addDoc(writer, searchTerm.text());
@@ -1783,6 +1785,7 @@ public class TestIndexReader extends Luc
   public void testPrepareCommitIsCurrent() throws Throwable {
     Directory dir = new MockRAMDirectory();
     IndexWriter writer = new IndexWriter(dir, new WhitespaceAnalyzer(), IndexWriter.MaxFieldLength.UNLIMITED);
+    writer.commit();
     Document doc = new Document();
     writer.addDocument(doc);
     IndexReader r = IndexReader.open(dir, true);

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReaderReopen.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReaderReopen.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReaderReopen.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexReaderReopen.java Thu May  6 08:20:38 2010
@@ -36,6 +36,7 @@ import org.apache.lucene.document.Docume
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Field.Index;
 import org.apache.lucene.document.Field.Store;
+import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.index.IndexWriter.MaxFieldLength;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.ScoreDoc;
@@ -172,6 +173,7 @@ public class TestIndexReaderReopen exten
   private void doTestReopenWithCommit (Directory dir, boolean withReopen) throws IOException {
     IndexWriter iwriter = new IndexWriter(dir, new KeywordAnalyzer(), true, MaxFieldLength.LIMITED);
     iwriter.setMergeScheduler(new SerialMergeScheduler());
+    iwriter.commit();
     IndexReader reader = IndexReader.open(dir, false);
     try {
       int M = 3;

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriter.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriter.java Thu May  6 08:20:38 2010
@@ -47,6 +47,7 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.PhraseQuery;
 import org.apache.lucene.search.Query;
@@ -776,7 +777,7 @@ public class TestIndexWriter extends Luc
         writer.close();
 
         long gen = SegmentInfos.getCurrentSegmentGeneration(dir);
-        assertTrue("segment generation should be > 1 but got " + gen, gen > 1);
+        assertTrue("segment generation should be > 0 but got " + gen, gen > 0);
 
         // Make the next segments file, with last byte
         // missing, to simulate a writer that crashed while
@@ -836,7 +837,7 @@ public class TestIndexWriter extends Luc
         writer.close();
 
         long gen = SegmentInfos.getCurrentSegmentGeneration(dir);
-        assertTrue("segment generation should be > 1 but got " + gen, gen > 1);
+        assertTrue("segment generation should be > 0 but got " + gen, gen > 0);
 
         String fileNameIn = SegmentInfos.getCurrentSegmentFileName(dir);
         String fileNameOut = IndexFileNames.fileNameFromGeneration(IndexFileNames.SEGMENTS,
@@ -901,7 +902,7 @@ public class TestIndexWriter extends Luc
         writer.close();
 
         long gen = SegmentInfos.getCurrentSegmentGeneration(dir);
-        assertTrue("segment generation should be > 1 but got " + gen, gen > 1);
+        assertTrue("segment generation should be > 0 but got " + gen, gen > 0);
 
         String[] files = dir.listAll();
         for(int i=0;i<files.length;i++) {
@@ -2317,7 +2318,7 @@ public class TestIndexWriter extends Luc
   public void testImmediateDiskFull() throws IOException {
     MockRAMDirectory dir = new MockRAMDirectory();
     IndexWriter writer = new IndexWriter(dir, new WhitespaceAnalyzer(), IndexWriter.MaxFieldLength.LIMITED);
-    dir.setMaxSizeInBytes(dir.getRecomputedActualSizeInBytes());
+    dir.setMaxSizeInBytes(Math.max(1, dir.getRecomputedActualSizeInBytes()));
     writer.setMaxBufferedDocs(2);
     final Document doc = new Document();
     doc.add(new Field("field", "aaa bbb ccc ddd eee fff ggg hhh iii jjj", Field.Store.YES, Field.Index.ANALYZED, Field.TermVector.WITH_POSITIONS_OFFSETS));
@@ -2640,7 +2641,7 @@ public class TestIndexWriter extends Luc
     writer.close();
 
     long gen = SegmentInfos.getCurrentSegmentGeneration(dir);
-    assertTrue("segment generation should be > 1 but got " + gen, gen > 1);
+    assertTrue("segment generation should be > 0 but got " + gen, gen > 0);
 
     final String segmentsFileName = SegmentInfos.getCurrentSegmentFileName(dir);
     IndexInput in = dir.openInput(segmentsFileName);
@@ -2668,7 +2669,8 @@ public class TestIndexWriter extends Luc
     IndexWriter writer  = new IndexWriter(dir, new WhitespaceAnalyzer(), IndexWriter.MaxFieldLength.LIMITED);
     writer.setMaxBufferedDocs(2);
     writer.setMergeFactor(5);
-
+    writer.commit();
+    
     for (int i = 0; i < 23; i++)
       addDoc(writer);
 
@@ -3535,7 +3537,8 @@ public class TestIndexWriter extends Luc
     IndexWriter writer = new IndexWriter(dir, new WhitespaceAnalyzer(), IndexWriter.MaxFieldLength.LIMITED);
     writer.setMaxBufferedDocs(2);
     writer.setMergeFactor(5);
-
+    writer.commit();
+    
     for (int i = 0; i < 23; i++)
       addDoc(writer);
 
@@ -3588,7 +3591,8 @@ public class TestIndexWriter extends Luc
 
     writer.setMaxBufferedDocs(2);
     writer.setMergeFactor(5);
-
+    writer.commit();
+    
     for (int i = 0; i < 23; i++)
       addDoc(writer);
 
@@ -3672,6 +3676,7 @@ public class TestIndexWriter extends Luc
 
       dir2 = new MockRAMDirectory();
       writer2 = new IndexWriter(dir2, new WhitespaceAnalyzer(), IndexWriter.MaxFieldLength.LIMITED);
+      writer2.commit();
       cms = (ConcurrentMergeScheduler) writer2.getMergeScheduler();
 
       readers = new IndexReader[NUM_COPY];

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterDelete.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterDelete.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterDelete.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterDelete.java Thu May  6 08:20:38 2010
@@ -23,6 +23,7 @@ import java.util.Arrays;
 import org.apache.lucene.analysis.WhitespaceAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.ScoreDoc;
 import org.apache.lucene.search.TermQuery;
@@ -764,7 +765,7 @@ public class TestIndexWriterDelete exten
     MockRAMDirectory dir = new MockRAMDirectory();
     IndexWriter modifier = new IndexWriter(dir,
                                            new WhitespaceAnalyzer(), true, IndexWriter.MaxFieldLength.UNLIMITED);
-
+    modifier.commit();
     dir.failOn(failure.reset());
 
     for (int i = 0; i < keywords.length; i++) {

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java Thu May  6 08:20:38 2010
@@ -138,7 +138,8 @@ public class TestIndexWriterExceptions e
     ((ConcurrentMergeScheduler) writer.getMergeScheduler()).setSuppressExceptions();
     //writer.setMaxBufferedDocs(10);
     writer.setRAMBufferSizeMB(0.1);
-
+    writer.commit();
+    
     if (DEBUG)
       writer.setInfoStream(System.out);
 
@@ -176,6 +177,7 @@ public class TestIndexWriterExceptions e
     ((ConcurrentMergeScheduler) writer.getMergeScheduler()).setSuppressExceptions();
     //writer.setMaxBufferedDocs(10);
     writer.setRAMBufferSizeMB(0.2);
+    writer.commit();
 
     if (DEBUG)
       writer.setInfoStream(System.out);

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterReader.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterReader.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestIndexWriterReader.java Thu May  6 08:20:38 2010
@@ -30,6 +30,7 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Field.Index;
 import org.apache.lucene.document.Field.Store;
 import org.apache.lucene.document.Field.TermVector;
+import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.search.TermQuery;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.Query;
@@ -642,6 +643,7 @@ public class TestIndexWriterReader exten
     Directory dir1 = new MockRAMDirectory();
     IndexWriter writer = new IndexWriter(dir1, new WhitespaceAnalyzer(),
                                          IndexWriter.MaxFieldLength.LIMITED);
+    writer.commit();
     writer.setInfoStream(infoStream);
 
     // create the index

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing.java Thu May  6 08:20:38 2010
@@ -19,6 +19,7 @@ package org.apache.lucene.index;
 import org.apache.lucene.util.*;
 import org.apache.lucene.store.*;
 import org.apache.lucene.document.*;
+import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.analysis.*;
 import org.apache.lucene.search.*;
 import org.apache.lucene.queryParser.*;
@@ -121,7 +122,7 @@ public class TestStressIndexing extends 
   */
   public void runStressTest(Directory directory, MergeScheduler mergeScheduler) throws Exception {
     IndexWriter modifier = new IndexWriter(directory, ANALYZER, true, IndexWriter.MaxFieldLength.UNLIMITED);
-
+    modifier.commit();
     modifier.setMaxBufferedDocs(10);
 
     TimedThread[] threads = new TimedThread[4];

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing2.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing2.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing2.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/index/TestStressIndexing2.java Thu May  6 08:20:38 2010
@@ -16,6 +16,7 @@ package org.apache.lucene.index;
 
 import org.apache.lucene.store.*;
 import org.apache.lucene.document.*;
+import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.analysis.*;
 
 import org.apache.lucene.util.LuceneTestCase;
@@ -124,6 +125,7 @@ public class TestStressIndexing2 extends
   public DocsAndWriter indexRandomIWReader(int nThreads, int iterations, int range, Directory dir) throws IOException, InterruptedException {
     Map docs = new HashMap();
     IndexWriter w = new MockIndexWriter(dir, new WhitespaceAnalyzer(), true, IndexWriter.MaxFieldLength.UNLIMITED);
+    w.commit();
     w.setUseCompoundFile(false);
 
     /***

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestBufferedIndexInput.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestBufferedIndexInput.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestBufferedIndexInput.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestBufferedIndexInput.java Thu May  6 08:20:38 2010
@@ -241,6 +241,7 @@ public class TestBufferedIndexInput exte
 
     public void testSetBufferSize() throws IOException {
       File indexDir = new File(System.getProperty("tempDir"), "testSetBufferSize");
+      indexDir.mkdirs(); // required for this MockFSDir since we don't commit on IW creation anymore.
       MockFSDirectory dir = new MockFSDirectory(indexDir, newRandom());
       try {
         IndexWriter writer = new IndexWriter(dir, new WhitespaceAnalyzer(), true, IndexWriter.MaxFieldLength.LIMITED);

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestLockFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestLockFactory.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestLockFactory.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestLockFactory.java Thu May  6 08:20:38 2010
@@ -85,7 +85,8 @@ public class TestLockFactory extends Luc
 
         IndexWriter writer = new IndexWriter(dir, new WhitespaceAnalyzer(), true,
                                              IndexWriter.MaxFieldLength.LIMITED);
-
+        writer.commit(); // required so the second open succeed
+        
         // Create a 2nd IndexWriter.  This is normally not allowed but it should run through since we're not
         // using any locks:
         IndexWriter writer2 = null;

Modified: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestWindowsMMap.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestWindowsMMap.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestWindowsMMap.java (original)
+++ lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/store/TestWindowsMMap.java Thu May  6 08:20:38 2010
@@ -64,14 +64,18 @@ public class TestWindowsMMap extends Luc
     new File(System.getProperty("tempDir"),"testLuceneMmap").getAbsolutePath();
 
   public void testMmapIndex() throws Exception {
-    FSDirectory storeDirectory;
-    storeDirectory = new MMapDirectory(new File(storePathname), null);
+    // sometimes the directory is not cleaned by rmDir, because on Windows it
+    // may take some time until the files are finally dereferenced. So clean the
+    // directory up front, or otherwise new IndexWriter will fail.
+    rmDir(new File(storePathname));
+    FSDirectory storeDirectory = new MMapDirectory(new File(storePathname), null);
 
     // plan to add a set of useful stopwords, consider changing some of the
     // interior filters.
     StandardAnalyzer analyzer = new StandardAnalyzer(org.apache.lucene.util.Version.LUCENE_CURRENT, Collections.emptySet());
     // TODO: something about lock timeouts and leftover locks.
     IndexWriter writer = new IndexWriter(storeDirectory, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
+    writer.commit();
     IndexSearcher searcher = new IndexSearcher(storeDirectory, true);
     
     for(int dx = 0; dx < 1000; dx ++) {
@@ -83,14 +87,16 @@ public class TestWindowsMMap extends Luc
     
     searcher.close();
     writer.close();
-                rmDir(new File(storePathname));
+    rmDir(new File(storePathname));
   }
 
-        private void rmDir(File dir) {
-          File[] files = dir.listFiles();
-          for (int i = 0; i < files.length; i++) {
-            files[i].delete();
-          }
-          dir.delete();
-        }
+  private void rmDir(File dir) {
+    if (!dir.exists()) {
+      return;
+    }
+    for (File file : dir.listFiles()) {
+      file.delete();
+    }
+    dir.delete();
+  }
 }

Propchange: lucene/dev/branches/branch_3x/lucene/backwards/src/test/org/apache/lucene/util/TestAttributeSource.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/util/TestAttributeSource.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/backwards/src/test/org/apache/lucene/util/TestAttributeSource.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/backwards/src/test/org/apache/lucene/util/TestAttributeSource.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/util/TestAttributeSource.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/util/TestAttributeSource.java:817269-818600,825998,829134,829881,831036

Propchange: lucene/dev/branches/branch_3x/lucene/build.xml
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,5 +1,5 @@
 /lucene/dev/trunk/build.xml:932749
-/lucene/dev/trunk/lucene/build.xml:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/build.xml:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/build.xml:924791,924850,930201
 /lucene/java/branches/lucene_2_9/build.xml:896850,909334
 /lucene/java/trunk/build.xml:924483-925561

Propchange: lucene/dev/branches/branch_3x/lucene/contrib/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/contrib:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/contrib:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/contrib:924791,924850,930201
 /lucene/java/branches/lucene_2_4/contrib:748824
 /lucene/java/branches/lucene_2_9/contrib:817269-818600,825998,829134,829816,829881,831036,896850,909334

Propchange: lucene/dev/branches/branch_3x/lucene/contrib/CHANGES.txt
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/contrib/CHANGES.txt:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/contrib/CHANGES.txt:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/contrib/CHANGES.txt:924791,924850,930201
 /lucene/java/branches/lucene_2_4/contrib/CHANGES.txt:748824
 /lucene/java/branches/lucene_2_9/contrib/CHANGES.txt:817269-818600,825998,826775,829134,829816,829881,831036,896850,909334

Propchange: lucene/dev/branches/branch_3x/lucene/contrib/highlighter/src/test/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/contrib/highlighter/src/test:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/contrib/highlighter/src/test:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/contrib/highlighter/src/test:924791,924850,930201
 /lucene/java/branches/lucene_2_4/contrib/highlighter/src/test:748824
 /lucene/java/branches/lucene_2_9/contrib/highlighter/src/test:817269-818600,825998,826775,829134,829816,829881,831036,896850,909334

Propchange: lucene/dev/branches/branch_3x/lucene/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:924791,924850,930201
 /lucene/java/branches/lucene_2_9/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:896850,909334
 /lucene/java/trunk/contrib/instantiated/src/test/org/apache/lucene/store/instantiated/TestIndicesEquals.java:924483-925561

Modified: lucene/dev/branches/branch_3x/lucene/contrib/xml-query-parser/src/test/org/apache/lucene/xmlparser/builders/TestNumericRangeFilterBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/contrib/xml-query-parser/src/test/org/apache/lucene/xmlparser/builders/TestNumericRangeFilterBuilder.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/contrib/xml-query-parser/src/test/org/apache/lucene/xmlparser/builders/TestNumericRangeFilterBuilder.java (original)
+++ lucene/dev/branches/branch_3x/lucene/contrib/xml-query-parser/src/test/org/apache/lucene/xmlparser/builders/TestNumericRangeFilterBuilder.java Thu May  6 08:20:38 2010
@@ -29,6 +29,7 @@ import org.apache.lucene.util.LuceneTest
 
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.IndexWriterConfig;
 import org.apache.lucene.index.IndexWriter.MaxFieldLength;
 import org.apache.lucene.search.Filter;
 import org.apache.lucene.search.NumericRangeFilter;
@@ -62,7 +63,8 @@ public class TestNumericRangeFilterBuild
 		Filter filter = filterBuilder.getFilter(doc.getDocumentElement());
 
 		RAMDirectory ramDir = new RAMDirectory();
-		IndexWriter writer = new IndexWriter(ramDir, null, MaxFieldLength.UNLIMITED);
+		IndexWriter writer = new IndexWriter(ramDir, new IndexWriterConfig(TEST_VERSION_CURRENT, null));
+		writer.commit();
 		try
 		{
 			IndexReader reader = IndexReader.open(ramDir, true);

Propchange: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/analysis/Tokenizer.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/Tokenizer.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/src/java/org/apache/lucene/analysis/Tokenizer.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/src/java/org/apache/lucene/analysis/Tokenizer.java:924791,924850,930201
 /lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/analysis/Tokenizer.java:896850,909334
 /lucene/java/trunk/src/java/org/apache/lucene/analysis/Tokenizer.java:924483-925561

Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexFileDeleter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexFileDeleter.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexFileDeleter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexFileDeleter.java Thu May  6 08:20:38 2010
@@ -30,6 +30,8 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Collection;
 
+import org.apache.lucene.store.NoSuchDirectoryException;
+
 /*
  * This class keeps track of each SegmentInfos instance that
  * is still "live", either because it corresponds to a
@@ -139,16 +141,21 @@ final class IndexFileDeleter {
     long currentGen = segmentInfos.getGeneration();
     IndexFileNameFilter filter = IndexFileNameFilter.getFilter();
 
-    String[] files = directory.listAll();
-
     CommitPoint currentCommitPoint = null;
+    boolean seenIndexFiles = false;
+    String[] files = null;
+    try {
+      files = directory.listAll();
+    } catch (NoSuchDirectoryException e) {  
+      // it means the directory is empty, so ignore it.
+      files = new String[0];
+    }
 
-    for(int i=0;i<files.length;i++) {
-
-      String fileName = files[i];
+    for (String fileName : files) {
 
       if (filter.accept(null, fileName) && !fileName.equals(IndexFileNames.SEGMENTS_GEN)) {
-
+        seenIndexFiles = true;
+        
         // Add this file to refCounts with initial count 0:
         getRefCount(fileName);
 
@@ -190,7 +197,10 @@ final class IndexFileDeleter {
       }
     }
 
-    if (currentCommitPoint == null) {
+    // If we haven't seen any Lucene files, then currentCommitPoint is expected
+    // to be null, because it means it's a fresh Directory. Therefore it cannot
+    // be any NFS cache issues - so just ignore.
+    if (currentCommitPoint == null && seenIndexFiles) {
       // We did not in fact see the segments_N file
       // corresponding to the segmentInfos that was passed
       // in.  Yet, it must exist, because our caller holds
@@ -230,13 +240,15 @@ final class IndexFileDeleter {
 
     // Finally, give policy a chance to remove things on
     // startup:
-    policy.onInit(commits);
+    if (seenIndexFiles) {
+      policy.onInit(commits);
+    }
 
     // Always protect the incoming segmentInfos since
     // sometime it may not be the most recent commit
     checkpoint(segmentInfos, false);
     
-    startingCommitDeleted = currentCommitPoint.isDeleted();
+    startingCommitDeleted = currentCommitPoint == null ? false : currentCommitPoint.isDeleted();
 
     deleteCommits();
   }

Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexReader.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexReader.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexReader.java Thu May  6 08:20:38 2010
@@ -1143,7 +1143,7 @@ public abstract class IndexReader implem
    *  it by calling {@link IndexReader#open(IndexCommit,boolean)}
    *  There must be at least one commit in
    *  the Directory, else this method throws {@link
-   *  java.io.IOException}.  Note that if a commit is in
+   *  IndexNotFoundException}.  Note that if a commit is in
    *  progress while this method is running, that commit
    *  may or may not be returned array.  */
   public static Collection<IndexCommit> listCommits(Directory dir) throws IOException {

Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/IndexWriter.java Thu May  6 08:20:38 2010
@@ -1109,25 +1109,16 @@ public class IndexWriter implements Clos
         // against an index that's currently open for
         // searching.  In this case we write the next
         // segments_N file with no segments:
-        boolean doCommit;
         try {
           segmentInfos.read(directory);
           segmentInfos.clear();
-          doCommit = false;
         } catch (IOException e) {
           // Likely this means it's a fresh directory
-          doCommit = true;
         }
 
-        if (doCommit) {
-          // Only commit if there is no segments file in
-          // this dir already.
-          segmentInfos.commit(directory);
-        } else {
-          // Record that we have a change (zero out all
-          // segments) pending:
-          changeCount++;
-        }
+        // Record that we have a change (zero out all
+        // segments) pending:
+        changeCount++;
       } else {
         segmentInfos.read(directory);
 

Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/SegmentInfos.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/SegmentInfos.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/SegmentInfos.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/index/SegmentInfos.java Thu May  6 08:20:38 2010
@@ -638,7 +638,7 @@ public final class SegmentInfos extends 
           
           if (gen == -1) {
             // Neither approach found a generation
-            throw new FileNotFoundException("no segments* file found in " + directory + ": files: " + Arrays.toString(files));
+            throw new IndexNotFoundException("no segments* file found in " + directory + ": files: " + Arrays.toString(files));
           }
         }
 

Propchange: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:924791,924850,930201
 /lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:896850,909334
 /lucene/java/trunk/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:924483-925561

Modified: lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/store/Directory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/store/Directory.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/store/Directory.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/java/org/apache/lucene/store/Directory.java Thu May  6 08:20:38 2010
@@ -55,9 +55,12 @@ public abstract class Directory implemen
    * this Directory instance). */
   protected LockFactory lockFactory;
 
-  /** Returns an array of strings, one for each file in the
-   *  directory.
-   * @throws IOException
+  /**
+   * Returns an array of strings, one for each file in the directory.
+   * 
+   * @throws NoSuchDirectoryException if the directory is not prepared for any
+   *         write operations (such as {@link #createOutput(String)}).
+   * @throws IOException in case of other IO errors
    */
   public abstract String[] listAll() throws IOException;
 

Propchange: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:825998,829134,829881,831036,896850,909334

Propchange: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/document/TestDateTools.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/document/TestDateTools.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/document/TestDateTools.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/src/test/org/apache/lucene/document/TestDateTools.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/document/TestDateTools.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestDateTools.java:825998,829134,829881,831036,896850,909334

Propchange: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/document/TestNumberTools.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/document/TestNumberTools.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/document/TestNumberTools.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/src/test/org/apache/lucene/document/TestNumberTools.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/document/TestNumberTools.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestNumberTools.java:825998,829134,829881,831036,896850,909334

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java Thu May  6 08:20:38 2010
@@ -545,11 +545,10 @@ public class TestBackwardsCompatibility 
       assertTrue("could not locate the 'content' field number in the _2.cfs segment", contentFieldIndex != -1);
 
       // Now verify file names:
-      String[] expected;
-      expected = new String[] {"_0.cfs",
+      String[] expected = new String[] {"_0.cfs",
                                "_0_1.del",
                                "_0_1.s" + contentFieldIndex,
-                               "segments_3",
+                               "segments_2",
                                "segments.gen"};
 
       String[] actual = dir.listAll();

Propchange: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu May  6 08:20:38 2010
@@ -1,4 +1,4 @@
-/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
+/lucene/dev/trunk/lucene/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:931298,931337,931502,932129-932131,932163,932304,932369,932374,932398,932587,932698,932747,932749,932773,932856,932862,932864,933613,933879,935521-935522,935734,935739,935771,936522,936544,936605,937360,938582-938646,938989,939649,940451-940452,940730,940878-940892,940994
 /lucene/java/branches/flex_1458/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:924791,924850,930201
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:825998,829134,829881,831036,896850,909334

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestCrash.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestCrash.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestCrash.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestCrash.java Thu May  6 08:20:38 2010
@@ -28,16 +28,19 @@ import org.apache.lucene.document.Field;
 
 public class TestCrash extends LuceneTestCase {
 
-  private IndexWriter initIndex() throws IOException {
-    return initIndex(new MockRAMDirectory());
+  private IndexWriter initIndex(boolean initialCommit) throws IOException {
+    return initIndex(new MockRAMDirectory(), initialCommit);
   }
 
-  private IndexWriter initIndex(MockRAMDirectory dir) throws IOException {
+  private IndexWriter initIndex(MockRAMDirectory dir, boolean initialCommit) throws IOException {
     dir.setLockFactory(NoLockFactory.getNoLockFactory());
 
     IndexWriter writer  = new IndexWriter(dir, new IndexWriterConfig(TEST_VERSION_CURRENT, new WhitespaceAnalyzer(TEST_VERSION_CURRENT)).setMaxBufferedDocs(10));
     ((ConcurrentMergeScheduler) writer.getConfig().getMergeScheduler()).setSuppressExceptions();
-
+    if (initialCommit) {
+      writer.commit();
+    }
+    
     Document doc = new Document();
     doc.add(new Field("content", "aaa", Field.Store.YES, Field.Index.ANALYZED));
     doc.add(new Field("id", "0", Field.Store.YES, Field.Index.ANALYZED));
@@ -56,7 +59,10 @@ public class TestCrash extends LuceneTes
   }
 
   public void testCrashWhileIndexing() throws IOException {
-    IndexWriter writer = initIndex();
+    // This test relies on being able to open a reader before any commit
+    // happened, so we must create an initial commit just to allow that, but
+    // before any documents were added.
+    IndexWriter writer = initIndex(true);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
     crash(writer);
     IndexReader reader = IndexReader.open(dir, false);
@@ -64,11 +70,14 @@ public class TestCrash extends LuceneTes
   }
 
   public void testWriterAfterCrash() throws IOException {
-    IndexWriter writer = initIndex();
+    // This test relies on being able to open a reader before any commit
+    // happened, so we must create an initial commit just to allow that, but
+    // before any documents were added.
+    IndexWriter writer = initIndex(true);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
     dir.setPreventDoubleWrite(false);
     crash(writer);
-    writer = initIndex(dir);
+    writer = initIndex(dir, false);
     writer.close();
 
     IndexReader reader = IndexReader.open(dir, false);
@@ -76,10 +85,10 @@ public class TestCrash extends LuceneTes
   }
 
   public void testCrashAfterReopen() throws IOException {
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
     writer.close();
-    writer = initIndex(dir);
+    writer = initIndex(dir, false);
     assertEquals(314, writer.maxDoc());
     crash(writer);
 
@@ -98,7 +107,7 @@ public class TestCrash extends LuceneTes
 
   public void testCrashAfterClose() throws IOException {
     
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
 
     writer.close();
@@ -117,7 +126,7 @@ public class TestCrash extends LuceneTes
 
   public void testCrashAfterCloseNoWait() throws IOException {
     
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
 
     writer.close(false);
@@ -136,7 +145,7 @@ public class TestCrash extends LuceneTes
 
   public void testCrashReaderDeletes() throws IOException {
     
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
 
     writer.close(false);
@@ -157,7 +166,7 @@ public class TestCrash extends LuceneTes
 
   public void testCrashReaderDeletesAfterClose() throws IOException {
     
-    IndexWriter writer = initIndex();
+    IndexWriter writer = initIndex(false);
     MockRAMDirectory dir = (MockRAMDirectory) writer.getDirectory();
 
     writer.close(false);

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestDeletionPolicy.java Thu May  6 08:20:38 2010
@@ -305,7 +305,7 @@ public class TestDeletionPolicy extends 
       writer.optimize();
       writer.close();
 
-      assertEquals(2, policy.numOnInit);
+      assertEquals(1, policy.numOnInit);
 
       // If we are not auto committing then there should
       // be exactly 2 commits (one per close above):
@@ -313,8 +313,8 @@ public class TestDeletionPolicy extends 
 
       // Test listCommits
       Collection<IndexCommit> commits = IndexReader.listCommits(dir);
-      // 1 from opening writer + 2 from closing writer
-      assertEquals(3, commits.size());
+      // 2 from closing writer
+      assertEquals(2, commits.size());
 
       // Make sure we can open a reader on each commit:
       for (final IndexCommit commit : commits) {
@@ -374,7 +374,7 @@ public class TestDeletionPolicy extends 
     writer.close();
 
     Collection<IndexCommit> commits = IndexReader.listCommits(dir);
-    assertEquals(6, commits.size());
+    assertEquals(5, commits.size());
     IndexCommit lastCommit = null;
     for (final IndexCommit commit : commits) {
       if (lastCommit == null || commit.getGeneration() > lastCommit.getGeneration())
@@ -389,7 +389,7 @@ public class TestDeletionPolicy extends 
     writer.optimize();
     writer.close();
 
-    assertEquals(7, IndexReader.listCommits(dir).size());
+    assertEquals(6, IndexReader.listCommits(dir).size());
 
     // Now open writer on the commit just before optimize:
     writer = new IndexWriter(dir, new IndexWriterConfig(TEST_VERSION_CURRENT, new WhitespaceAnalyzer(TEST_VERSION_CURRENT))
@@ -412,7 +412,7 @@ public class TestDeletionPolicy extends 
     writer.close();
 
     // Now 8 because we made another commit
-    assertEquals(8, IndexReader.listCommits(dir).size());
+    assertEquals(7, IndexReader.listCommits(dir).size());
     
     r = IndexReader.open(dir, true);
     // Not optimized because we rolled it back, and now only
@@ -491,7 +491,7 @@ public class TestDeletionPolicy extends 
       writer.optimize();
       writer.close();
 
-      assertEquals(2, policy.numOnInit);
+      assertEquals(1, policy.numOnInit);
       // If we are not auto committing then there should
       // be exactly 2 commits (one per close above):
       assertEquals(2, policy.numOnCommit);
@@ -537,7 +537,7 @@ public class TestDeletionPolicy extends 
       }
 
       assertTrue(policy.numDelete > 0);
-      assertEquals(N+1, policy.numOnInit);
+      assertEquals(N, policy.numOnInit);
       assertEquals(N+1, policy.numOnCommit);
 
       // Simplistic check: just verify only the past N segments_N's still
@@ -625,8 +625,8 @@ public class TestDeletionPolicy extends 
       // this is a commit
       writer.close();
 
-      assertEquals(2*(N+2), policy.numOnInit);
-      assertEquals(2*(N+2)-1, policy.numOnCommit);
+      assertEquals(2*(N+1)+1, policy.numOnInit);
+      assertEquals(2*(N+2), policy.numOnCommit);
 
       IndexSearcher searcher = new IndexSearcher(dir, false);
       ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;
@@ -735,8 +735,8 @@ public class TestDeletionPolicy extends 
         writer.close();
       }
 
-      assertEquals(1+3*(N+1), policy.numOnInit);
-      assertEquals(3*(N+1), policy.numOnCommit);
+      assertEquals(3*(N+1), policy.numOnInit);
+      assertEquals(3*(N+1)+1, policy.numOnCommit);
 
       IndexSearcher searcher = new IndexSearcher(dir, false);
       ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexFileDeleter.java Thu May  6 08:20:38 2010
@@ -138,11 +138,11 @@ public class TestIndexFileDeleter extend
     copyFile(dir, "_0.cfs", "deletable");
 
     // Create some old segments file:
-    copyFile(dir, "segments_3", "segments");
-    copyFile(dir, "segments_3", "segments_2");
+    copyFile(dir, "segments_2", "segments");
+    copyFile(dir, "segments_2", "segments_1");
 
     // Create a bogus cfs file shadowing a non-cfs segment:
-    copyFile(dir, "_2.cfs", "_3.cfs");
+    copyFile(dir, "_1.cfs", "_2.cfs");
 
     String[] filesPre = dir.listAll();
 

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReader.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReader.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReader.java Thu May  6 08:20:38 2010
@@ -466,18 +466,17 @@ public class TestIndexReader extends Luc
     public void testLockObtainFailed() throws IOException {
         Directory dir = new RAMDirectory();
 
-        IndexWriter writer = null;
-        IndexReader reader = null;
         Term searchTerm = new Term("content", "aaa");
 
         //  add 11 documents with term : aaa
-        writer  = new IndexWriter(dir, new IndexWriterConfig(TEST_VERSION_CURRENT, new WhitespaceAnalyzer(TEST_VERSION_CURRENT)));
+        IndexWriter writer = new IndexWriter(dir, new IndexWriterConfig(TEST_VERSION_CURRENT, new WhitespaceAnalyzer(TEST_VERSION_CURRENT)));
+        writer.commit();
         for (int i = 0; i < 11; i++) {
             addDoc(writer, searchTerm.text());
         }
 
         // Create reader:
-        reader = IndexReader.open(dir, false);
+        IndexReader reader = IndexReader.open(dir, false);
 
         // Try to make changes
         try {
@@ -1774,6 +1773,7 @@ public class TestIndexReader extends Luc
     Directory dir = new MockRAMDirectory();
     IndexWriter writer = new IndexWriter(dir, new IndexWriterConfig(
         TEST_VERSION_CURRENT, new WhitespaceAnalyzer(TEST_VERSION_CURRENT)));
+    writer.commit();
     Document doc = new Document();
     writer.addDocument(doc);
     IndexReader r = IndexReader.open(dir, true);

Modified: lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReaderReopen.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReaderReopen.java?rev=941607&r1=941606&r2=941607&view=diff
==============================================================================
--- lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReaderReopen.java (original)
+++ lucene/dev/branches/branch_3x/lucene/src/test/org/apache/lucene/index/TestIndexReaderReopen.java Thu May  6 08:20:38 2010
@@ -174,6 +174,7 @@ public class TestIndexReaderReopen exten
     IndexWriter iwriter = new IndexWriter(dir, new IndexWriterConfig(
         TEST_VERSION_CURRENT, new KeywordAnalyzer()).setOpenMode(
         OpenMode.CREATE).setMergeScheduler(new SerialMergeScheduler()));
+    iwriter.commit();
     IndexReader reader = IndexReader.open(dir, false);
     try {
       int M = 3;