lucene-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mikemcc...@apache.org
Subject svn commit: r1562403 [1/7] - in /lucene/dev/branches/lucene5376: ./ dev-tools/ dev-tools/idea/lucene/suggest/ dev-tools/idea/solr/core/src/java/ lucene/ lucene/analysis/ lucene/analysis/common/ lucene/analysis/common/src/java/org/apache/lucene/analysis...
Date Wed, 29 Jan 2014 11:14:56 GMT
Author: mikemccand
Date: Wed Jan 29 11:14:53 2014
New Revision: 1562403

URL: http://svn.apache.org/r1562403
Log:
LUCENE-5376: sync trunk

Added:
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/codecs/lucene40/Lucene40SegmentInfoWriter.java
      - copied unchanged from r1562396, lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/codecs/lucene40/Lucene40SegmentInfoWriter.java
    lucene/dev/branches/lucene5376/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/MultiTermHighlighting.java
      - copied unchanged from r1562396, lucene/dev/trunk/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/MultiTermHighlighting.java
    lucene/dev/branches/lucene5376/lucene/highlighter/src/test/org/apache/lucene/search/postingshighlight/TestMultiTermHighlighting.java
      - copied unchanged from r1562396, lucene/dev/trunk/lucene/highlighter/src/test/org/apache/lucene/search/postingshighlight/TestMultiTermHighlighting.java
    lucene/dev/branches/lucene5376/lucene/licenses/spatial4j-0.4.jar.sha1
      - copied unchanged from r1562396, lucene/dev/trunk/lucene/licenses/spatial4j-0.4.jar.sha1
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/SpatialTestData.java
      - copied unchanged from r1562396, lucene/dev/trunk/lucene/spatial/src/test/org/apache/lucene/spatial/SpatialTestData.java
    lucene/dev/branches/lucene5376/lucene/suggest/src/java/org/apache/lucene/search/suggest/DocumentValueSourceDictionary.java
      - copied unchanged from r1562396, lucene/dev/trunk/lucene/suggest/src/java/org/apache/lucene/search/suggest/DocumentValueSourceDictionary.java
    lucene/dev/branches/lucene5376/lucene/suggest/src/test/org/apache/lucene/search/suggest/DocumentValueSourceDictionaryTest.java
      - copied unchanged from r1562396, lucene/dev/trunk/lucene/suggest/src/test/org/apache/lucene/search/suggest/DocumentValueSourceDictionaryTest.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/store/blockcache/Store.java
      - copied unchanged from r1562396, lucene/dev/trunk/solr/core/src/java/org/apache/solr/store/blockcache/Store.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/util/SpatialUtils.java
      - copied unchanged from r1562396, lucene/dev/trunk/solr/core/src/java/org/apache/solr/util/SpatialUtils.java
    lucene/dev/branches/lucene5376/solr/core/src/test-files/solr/collection1/conf/schema-customfield.xml
      - copied unchanged from r1562396, lucene/dev/trunk/solr/core/src/test-files/solr/collection1/conf/schema-customfield.xml
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/schema/MyCrazyCustomField.java
      - copied unchanged from r1562396, lucene/dev/trunk/solr/core/src/test/org/apache/solr/schema/MyCrazyCustomField.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/schema/TrieIntPrefixActsAsRangeQueryFieldType.java
      - copied unchanged from r1562396, lucene/dev/trunk/solr/core/src/test/org/apache/solr/schema/TrieIntPrefixActsAsRangeQueryFieldType.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/search/TestOverriddenPrefixQueryForCustomFieldType.java
      - copied unchanged from r1562396, lucene/dev/trunk/solr/core/src/test/org/apache/solr/search/TestOverriddenPrefixQueryForCustomFieldType.java
    lucene/dev/branches/lucene5376/solr/licenses/spatial4j-0.4.jar.sha1
      - copied unchanged from r1562396, lucene/dev/trunk/solr/licenses/spatial4j-0.4.jar.sha1
Removed:
    lucene/dev/branches/lucene5376/lucene/licenses/spatial4j-0.3.jar.sha1
    lucene/dev/branches/lucene5376/lucene/suggest/src/java/org/apache/lucene/search/suggest/DocumentExpressionDictionary.java
    lucene/dev/branches/lucene5376/lucene/suggest/src/test/org/apache/lucene/search/suggest/DocumentExpressionDictionaryTest.java
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40SegmentInfoWriter.java
    lucene/dev/branches/lucene5376/solr/licenses/spatial4j-0.3.jar.sha1
Modified:
    lucene/dev/branches/lucene5376/   (props changed)
    lucene/dev/branches/lucene5376/dev-tools/   (props changed)
    lucene/dev/branches/lucene5376/dev-tools/idea/lucene/suggest/suggest.iml
    lucene/dev/branches/lucene5376/dev-tools/idea/solr/core/src/java/solr-core.iml
    lucene/dev/branches/lucene5376/lucene/   (props changed)
    lucene/dev/branches/lucene5376/lucene/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/lucene5376/lucene/analysis/   (props changed)
    lucene/dev/branches/lucene5376/lucene/analysis/common/   (props changed)
    lucene/dev/branches/lucene5376/lucene/analysis/common/build.xml
    lucene/dev/branches/lucene5376/lucene/analysis/common/src/java/org/apache/lucene/analysis/shingle/ShingleAnalyzerWrapper.java
    lucene/dev/branches/lucene5376/lucene/benchmark/   (props changed)
    lucene/dev/branches/lucene5376/lucene/benchmark/build.xml
    lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/GeonamesLineParser.java
    lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialDocMaker.java
    lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialFileQueryMaker.java
    lucene/dev/branches/lucene5376/lucene/common-build.xml   (contents, props changed)
    lucene/dev/branches/lucene5376/lucene/core/   (props changed)
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/codecs/lucene40/Lucene40SegmentInfoFormat.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/AutomatonQuery.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/FuzzyQuery.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/spans/SpanMultiTermQueryWrapper.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/Lock.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockReleaseFailedException.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockStressTest.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NativeFSLockFactory.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NoLockFactory.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SimpleFSLockFactory.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SingleInstanceLockFactory.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/VerifyingLockFactory.java
    lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/util/PriorityQueue.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40DocValuesFormat.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsFormat.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsReader.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40StoredFieldsFormat.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40TermVectorsFormat.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestReuseDocsEnum.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41StoredFieldsFormat.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene42/TestLucene42DocValuesFormat.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestAddIndexes.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestNumericDocValuesUpdates.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/search/TestSubScorerFreqs.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestDirectory.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLock.java
    lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLockFactory.java
    lucene/dev/branches/lucene5376/lucene/highlighter/   (props changed)
    lucene/dev/branches/lucene5376/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java
    lucene/dev/branches/lucene5376/lucene/ivy-versions.properties   (contents, props changed)
    lucene/dev/branches/lucene5376/lucene/join/   (props changed)
    lucene/dev/branches/lucene5376/lucene/join/src/java/org/apache/lucene/search/join/ToParentBlockJoinQuery.java
    lucene/dev/branches/lucene5376/lucene/join/src/test/org/apache/lucene/search/join/TestBlockJoin.java
    lucene/dev/branches/lucene5376/lucene/licenses/   (props changed)
    lucene/dev/branches/lucene5376/lucene/licenses/spatial4j-NOTICE.txt
    lucene/dev/branches/lucene5376/lucene/queryparser/   (props changed)
    lucene/dev/branches/lucene5376/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/QueryNode.java
    lucene/dev/branches/lucene5376/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/QueryNodeImpl.java
    lucene/dev/branches/lucene5376/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/core/nodes/TestQueryNode.java
    lucene/dev/branches/lucene5376/lucene/queryparser/src/test/org/apache/lucene/queryparser/util/QueryParserTestBase.java
    lucene/dev/branches/lucene5376/lucene/spatial/   (props changed)
    lucene/dev/branches/lucene5376/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test-files/cities-Intersects-BBox.txt
    lucene/dev/branches/lucene5376/lucene/spatial/src/test-files/data/countries-bbox.txt
    lucene/dev/branches/lucene5376/lucene/spatial/src/test-files/data/simple-bbox.txt
    lucene/dev/branches/lucene5376/lucene/spatial/src/test-files/data/states-bbox.txt
    lucene/dev/branches/lucene5376/lucene/spatial/src/test-files/data/world-cities-points.txt
    lucene/dev/branches/lucene5376/lucene/spatial/src/test-files/simple-Queries-BBox.txt
    lucene/dev/branches/lucene5376/lucene/spatial/src/test-files/states-Intersects-BBox.txt
    lucene/dev/branches/lucene5376/lucene/spatial/src/test-files/states-IsWithin-BBox.txt
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/DistanceStrategyTest.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/PortedSolr3Test.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/SpatialExample.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/SpatialTestQuery.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/StrategyTestCase.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/TestTestFramework.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/prefix/JtsPolygonTest.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/prefix/SpatialOpRecursivePrefixTreeTest.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/prefix/TestTermQueryPrefixGridStrategy.java
    lucene/dev/branches/lucene5376/lucene/spatial/src/test/org/apache/lucene/spatial/query/SpatialArgsParserTest.java
    lucene/dev/branches/lucene5376/lucene/suggest/   (props changed)
    lucene/dev/branches/lucene5376/lucene/suggest/build.xml
    lucene/dev/branches/lucene5376/lucene/test-framework/   (props changed)
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWCodec.java
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene41/Lucene41RWCodec.java
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42RWCodec.java
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene45/Lucene45RWCodec.java
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/search/AssertingScorer.java
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/store/MockLockFactoryWrapper.java
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/util/LuceneTestCase.java
    lucene/dev/branches/lucene5376/lucene/test-framework/src/java/org/apache/lucene/util/TestRuleSetupAndRestoreClassEnv.java
    lucene/dev/branches/lucene5376/solr/   (props changed)
    lucene/dev/branches/lucene5376/solr/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/lucene5376/solr/core/   (props changed)
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/cloud/ElectionContext.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/cloud/OverseerCollectionProcessor.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/cloud/SyncStrategy.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/core/CoreContainer.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/core/HdfsDirectoryFactory.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/handler/SnapShooter.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/handler/admin/CoreAdminHandler.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/handler/component/HttpShardHandlerFactory.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/handler/component/RealTimeGetComponent.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/handler/loader/JavabinLoader.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/highlight/PostingsSolrHighlighter.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/parser/SolrQueryParserBase.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/schema/AbstractSpatialFieldType.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/schema/BinaryField.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/schema/FieldType.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/schema/GeoHashField.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/schema/LatLonType.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/schema/PointType.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/search/Grouping.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/search/PrefixQParserPlugin.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/search/SimpleQParserPlugin.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/search/function/distance/GeoDistValueSourceParser.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/search/function/distance/SquaredEuclideanFunction.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/search/function/distance/VectorDistanceFunction.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/spelling/suggest/DocumentExpressionDictionaryFactory.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/store/blockcache/BlockDirectory.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/store/blockcache/BufferStore.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/store/blockcache/CustomBufferedIndexInput.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/store/blockcache/ReusedBufferedIndexOutput.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/store/hdfs/HdfsDirectory.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/store/hdfs/HdfsLockFactory.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/update/HdfsUpdateLog.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/update/PeerSync.java
    lucene/dev/branches/lucene5376/solr/core/src/java/org/apache/solr/update/VersionInfo.java
    lucene/dev/branches/lucene5376/solr/core/src/test-files/solr/collection1/conf/schema-sorts.xml
    lucene/dev/branches/lucene5376/solr/core/src/test-files/solr/collection1/conf/schema-spatial.xml
    lucene/dev/branches/lucene5376/solr/core/src/test-files/solr/solr-no-core-old-style.xml
    lucene/dev/branches/lucene5376/solr/core/src/test-files/solr/solr-no-core.xml
    lucene/dev/branches/lucene5376/solr/core/src/test-files/solr/solr.xml
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/CursorPagingTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/analytics/AbstractAnalyticsStatsTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/BasicDistributedZkTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/ChaosMonkeyNothingIsSafeTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/CustomCollectionTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/DistribCursorPagingTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/FullSolrCloudDistribCmdsTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/OverseerRolesTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/cloud/hdfs/StressHdfsTest.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/highlight/TestPostingsSolrHighlighter.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/search/TestCollapseQParserPlugin.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/search/TestRecoveryHdfs.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/search/TestSolr4Spatial.java
    lucene/dev/branches/lucene5376/solr/core/src/test/org/apache/solr/store/hdfs/HdfsLockFactoryTest.java
    lucene/dev/branches/lucene5376/solr/example/   (props changed)
    lucene/dev/branches/lucene5376/solr/example/example-DIH/solr/db/conf/db-data-config.xml
    lucene/dev/branches/lucene5376/solr/licenses/   (props changed)
    lucene/dev/branches/lucene5376/solr/licenses/spatial4j-NOTICE.txt
    lucene/dev/branches/lucene5376/solr/solrj/   (props changed)
    lucene/dev/branches/lucene5376/solr/solrj/src/java/org/apache/solr/client/solrj/impl/ConcurrentUpdateSolrServer.java
    lucene/dev/branches/lucene5376/solr/solrj/src/java/org/apache/solr/client/solrj/request/JavaBinUpdateRequestCodec.java
    lucene/dev/branches/lucene5376/solr/solrj/src/java/org/apache/solr/client/solrj/request/UpdateRequest.java
    lucene/dev/branches/lucene5376/solr/solrj/src/java/org/apache/solr/common/cloud/ConnectionManager.java
    lucene/dev/branches/lucene5376/solr/solrj/src/java/org/apache/solr/common/util/JavaBinCodec.java
    lucene/dev/branches/lucene5376/solr/solrj/src/test/org/apache/solr/client/solrj/request/TestUpdateRequestCodec.java
    lucene/dev/branches/lucene5376/solr/test-framework/   (props changed)
    lucene/dev/branches/lucene5376/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
    lucene/dev/branches/lucene5376/solr/test-framework/src/java/org/apache/solr/cloud/ChaosMonkey.java

Modified: lucene/dev/branches/lucene5376/dev-tools/idea/lucene/suggest/suggest.iml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/dev-tools/idea/lucene/suggest/suggest.iml?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/dev-tools/idea/lucene/suggest/suggest.iml (original)
+++ lucene/dev/branches/lucene5376/dev-tools/idea/lucene/suggest/suggest.iml Wed Jan 29 11:14:53 2014
@@ -12,7 +12,6 @@
     <orderEntry type="sourceFolder" forTests="false" />
     <orderEntry type="library" scope="TEST" name="JUnit" level="project" />
     <orderEntry type="module" scope="TEST" module-name="lucene-test-framework" />
-    <orderEntry type="module" module-name="expressions" />
     <orderEntry type="module" module-name="queries" />
     <orderEntry type="module" module-name="analysis-common" />
     <orderEntry type="module" module-name="misc" />

Modified: lucene/dev/branches/lucene5376/dev-tools/idea/solr/core/src/java/solr-core.iml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/dev-tools/idea/solr/core/src/java/solr-core.iml?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/dev-tools/idea/solr/core/src/java/solr-core.iml (original)
+++ lucene/dev/branches/lucene5376/dev-tools/idea/solr/core/src/java/solr-core.iml Wed Jan 29 11:14:53 2014
@@ -22,6 +22,7 @@
     <orderEntry type="module" module-name="misc" />
     <orderEntry type="module" module-name="phonetic" />
     <orderEntry type="module" module-name="suggest" />
+    <orderEntry type="module" module-name="expressions" />
     <orderEntry type="module" module-name="analysis-common" />
     <orderEntry type="module" module-name="lucene-core" />
     <orderEntry type="module" module-name="queryparser" />

Modified: lucene/dev/branches/lucene5376/lucene/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/CHANGES.txt?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/CHANGES.txt (original)
+++ lucene/dev/branches/lucene5376/lucene/CHANGES.txt Wed Jan 29 11:14:53 2014
@@ -57,6 +57,8 @@ API Changes
 * LUCENE-5388: Remove Reader from Tokenizer's constructor. 
   (Benson Margulies via Robert Muir - pull request #16)
 
+* LUCENE-5405: Make ShingleAnalzyerWrapper.getWrappedAnalyzer() public final (gsingers)
+
 Documentation
 
 * LUCENE-5392: Add/improve analysis package documentation to reflect
@@ -102,7 +104,20 @@ New Features
   using SortField.setMissingValue(SortField.STRING_FIRST), or last,
   using SortField.setMissingValue(SortField.STRING_LAST). (Rob Muir,
   Mike McCandless)
+  
+* LUCENE-5099: QueryNode should have the ability to detach from its node
+  parent. Added QueryNode.removeFromParent() that allows nodes to be 
+  detached from its parent node. (Adriano Crestani)
+
+* LUCENE-5395: Upgrade Spatial4j 0.4: Parses WKT (including ENVELOPE) with
+  extension "BUFFER"; buffering a point results in a Circle. JTS isn't needed
+  for WKT any more but remains required for Polygons. New Shapes:
+  ShapeCollection and BufferedLineString. Various other improvements and bug
+  fixes too. More info:
+  https://github.com/spatial4j/spatial4j/blob/master/CHANGES.md  (David Smiley)
 
+* LUCENE-5415: Add multitermquery (wildcards,prefix,etc) to PostingsHighlighter.
+  (Mike McCandless, Robert Muir)
 
 Build
 
@@ -137,6 +152,9 @@ Build
 
 * LUCENE-5383: fix changes2html to link pull requests (Steve Rowe)
 
+* LUCENE-5411: Upgrade to released JFlex 1.5.0; stop requiring
+  a locally built JFlex snapshot jar. (Steve Rowe)
+
 Bug fixes
 
 * LUCENE-5285: Improved highlighting of multi-valued fields with
@@ -173,12 +191,42 @@ Bug fixes
   preventing wrong term positions for fields that use
   StringTokenStream. (Michael Busch)
 
+* LUCENE-5377: IndexWriter.addIndexes(Directory[]) would cause corruption
+  on Lucene 4.6 if any index segments were Lucene 4.0-4.5.
+  (Littlestar, Mike McCandless, Shai Erera, Robert Muir)
+
+* SOLR-5661: PriorityQueue now refuses to allocate itself if the
+  incoming maxSize is too large (Raintung Li via Mike McCandless)
+
+* LUCENE-5228: IndexWriter.addIndexes(Directory[]) now acquires a
+  write lock in each Directory, to ensure that no open IndexWriter is
+  changing the incoming indices.  This also means that you cannot pass
+  the same Directory to multiple concurrent addIndexes calls (which is
+  anyways unusual).  (Robert Muir, Mike McCandless)
+
+* LUCENE-5415: SpanMultiTermQueryWrapper didn't handle its boost in
+  hashcode/equals/tostring/rewrite.  (Robert Muir)
+
+* LUCENE-5409: ToParentBlockJoinCollector.getTopGroups would fail to
+  return any groups when the joined query required more than one
+  rewrite step (Peng Cheng via Mike McCandless)
+
 API Changes
 
 * LUCENE-5339: The facet module was simplified/reworked to make the
   APIs more approachable to new users.  (Shai Erera, Gilad Barkai, Rob
   Muir, Mike McCandless)
 
+* LUCENE-5395: The SpatialArgsParser now only reads WKT, no more "lat, lon"
+  etc. but it's easy to override the parseShape method if you wish. (David
+  Smiley)
+
+* LUCENE-5414: DocumentExpressionDictionary was renamed to 
+  DocumentValueSourceDictionary and all dependencies to the lucene-expression
+  module were removed from lucene-suggest. DocumentValueSourceDictionary now
+  only accepts a ValueSource instead of a convenience ctor for an expression
+  string. (Simon Willnauer)
+
 Optimizations
 
 * LUCENE-5372: Replace StringBuffer by StringBuilder, where possible.

Modified: lucene/dev/branches/lucene5376/lucene/analysis/common/build.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/analysis/common/build.xml?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/analysis/common/build.xml (original)
+++ lucene/dev/branches/lucene5376/lucene/analysis/common/build.xml Wed Jan 29 11:14:53 2014
@@ -29,7 +29,7 @@
 
   <import file="../analysis-module-build.xml"/>
 	
-  <target name="jflex" depends="jflex-check,clean-jflex,-gen-uax29-supp-macros,
+  <target name="jflex" depends="-install-jflex,clean-jflex,-gen-uax29-supp-macros,
                                 -jflex-StandardAnalyzer,-jflex-UAX29URLEmailTokenizer,
                                 -jflex-wiki-tokenizer,-jflex-HTMLStripCharFilter"/>
 
@@ -40,11 +40,7 @@
   </target>
 
   <target name="-jflex-HTMLStripCharFilter"
-          depends="init,jflex-check,generate-jflex-html-char-entities"
-          if="jflex.present">
-    <taskdef classname="jflex.anttask.JFlexTask" name="jflex">
-      <classpath refid="jflex.classpath"/>
-    </taskdef>
+          depends="init,generate-jflex-html-char-entities">
     <jflex file="src/java/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.jflex"
            outdir="src/java/org/apache/lucene/analysis/charfilter"
            nobak="on" inputstreamctor="false"/>
@@ -65,25 +61,16 @@
     <fixcrlf file="src/java/org/apache/lucene/analysis/charfilter/HTMLCharacterEntities.jflex" encoding="UTF-8"/>
   </target>
 
-  <target name="-jflex-wiki-tokenizer" depends="init,jflex-check" if="jflex.present">
-    <taskdef classname="jflex.anttask.JFlexTask" name="jflex">
-      <classpath refid="jflex.classpath"/>
-    </taskdef>
+  <target name="-jflex-wiki-tokenizer" depends="init,-install-jflex">
     <run-jflex dir="src/java/org/apache/lucene/analysis/wikipedia" name="WikipediaTokenizerImpl"/>
   </target>
 
-  <target name="-jflex-StandardAnalyzer" depends="init,jflex-check" if="jflex.present">
-    <taskdef classname="jflex.anttask.JFlexTask" name="jflex">
-			<classpath refid="jflex.classpath"/>
-    </taskdef>
+  <target name="-jflex-StandardAnalyzer" depends="init,-install-jflex">
     <run-jflex dir="src/java/org/apache/lucene/analysis/standard" name="StandardTokenizerImpl"/>
     <run-jflex dir="src/java/org/apache/lucene/analysis/standard" name="ClassicTokenizerImpl"/>
   </target>
 
-  <target name="-jflex-UAX29URLEmailTokenizer" depends="jflex-check" if="jflex.present">
-    <taskdef classname="jflex.anttask.JFlexTask" name="jflex">
-			<classpath refid="jflex.classpath"/>
-    </taskdef>
+  <target name="-jflex-UAX29URLEmailTokenizer" depends="init,-install-jflex">
     <run-jflex dir="src/java/org/apache/lucene/analysis/standard" name="UAX29URLEmailTokenizerImpl"/>
   </target>
   

Modified: lucene/dev/branches/lucene5376/lucene/analysis/common/src/java/org/apache/lucene/analysis/shingle/ShingleAnalyzerWrapper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/analysis/common/src/java/org/apache/lucene/analysis/shingle/ShingleAnalyzerWrapper.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/analysis/common/src/java/org/apache/lucene/analysis/shingle/ShingleAnalyzerWrapper.java (original)
+++ lucene/dev/branches/lucene5376/lucene/analysis/common/src/java/org/apache/lucene/analysis/shingle/ShingleAnalyzerWrapper.java Wed Jan 29 11:14:53 2014
@@ -138,7 +138,7 @@ public final class ShingleAnalyzerWrappe
   }
 
   @Override
-  protected Analyzer getWrappedAnalyzer(String fieldName) {
+  public final Analyzer getWrappedAnalyzer(String fieldName) {
     return delegate;
   }
 

Modified: lucene/dev/branches/lucene5376/lucene/benchmark/build.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/benchmark/build.xml?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/benchmark/build.xml (original)
+++ lucene/dev/branches/lucene5376/lucene/benchmark/build.xml Wed Jan 29 11:14:53 2014
@@ -67,7 +67,7 @@
         <bunzip2 src="temp/enwiki-20070527-pages-articles.xml.bz2" dest="temp"/>
     </target>
 
-    <target name="geonames-files" depends="check-files">
+    <target name="geonames-files" depends="check-files" description="Get data for spatial.alg">
         <mkdir dir="temp"/>
         <antcall target="get-geonames"/>
         <antcall target="expand-geonames"/>

Modified: lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/GeonamesLineParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/GeonamesLineParser.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/GeonamesLineParser.java (original)
+++ lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/GeonamesLineParser.java Wed Jan 29 11:14:53 2014
@@ -39,6 +39,8 @@ public class GeonamesLineParser extends 
 
     docData.setID(Integer.parseInt(parts[0]));//note: overwrites ID assigned by LineDocSource
     docData.setName(parts[1]);
-    docData.setBody(parts[4]+","+parts[5]); // latitude , longitude
+    String latitude = parts[4];
+    String longitude = parts[5];
+    docData.setBody("POINT("+longitude+" "+latitude+")");//WKT is x y order
   }
 }

Modified: lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialDocMaker.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialDocMaker.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialDocMaker.java (original)
+++ lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialDocMaker.java Wed Jan 29 11:14:53 2014
@@ -190,7 +190,7 @@ public class SpatialDocMaker extends Doc
   public static Shape makeShapeFromString(SpatialStrategy strategy, String name, String shapeStr) {
     if (shapeStr != null && shapeStr.length() > 0) {
       try {
-        return strategy.getSpatialContext().readShape(shapeStr);
+        return strategy.getSpatialContext().readShapeFromWkt(shapeStr);
       } catch (Exception e) {//InvalidShapeException TODO
         System.err.println("Shape "+name+" wasn't parseable: "+e+"  (skipping it)");
         return null;

Modified: lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialFileQueryMaker.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialFileQueryMaker.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialFileQueryMaker.java (original)
+++ lucene/dev/branches/lucene5376/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/SpatialFileQueryMaker.java Wed Jan 29 11:14:53 2014
@@ -36,7 +36,7 @@ import java.util.Properties;
 
 /**
  * Reads spatial data from the body field docs from an internally created {@link LineDocSource}.
- * It's parsed by {@link com.spatial4j.core.context.SpatialContext#readShape(String)} and then
+ * It's parsed by {@link com.spatial4j.core.context.SpatialContext#readShapeFromWkt(String)} (String)} and then
  * further manipulated via a configurable {@link SpatialDocMaker.ShapeConverter}. When using point
  * data, it's likely you'll want to configure the shape converter so that the query shapes actually
  * cover a region. The queries are all created & cached in advance. This query maker works in

Modified: lucene/dev/branches/lucene5376/lucene/common-build.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/common-build.xml?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/common-build.xml (original)
+++ lucene/dev/branches/lucene5376/lucene/common-build.xml Wed Jan 29 11:14:53 2014
@@ -227,17 +227,6 @@
   <property name="m2.repository.id" value="local"/>
   <property name="m2.credentials.prompt" value="true"/>
 
-  <property name="jflex.home" location="${common.dir}"/>
-
-  <path id="jflex.classpath">
-    <fileset dir="${jflex.home}/">
-      <!-- for a JFlex trunk checkout: -->
-      <include name="jflex/target/*.jar"/>
-      <!-- for a JFlex distribution (not yet available): -->
-      <include name="lib/*.jar"/>
-    </fileset>
-  </path>
-
   <property name="backwards.dir" location="backwards"/>
   <property name="build.dir.backwards" location="${build.dir}/backwards"/>
 
@@ -472,31 +461,6 @@
     </sequential>
   </macrodef>
 
-  <target name="jflex-check">
-    <available property="jflex.present" classname="jflex.anttask.JFlexTask">
-      <classpath refid="jflex.classpath"/>
-    </available>
-    <fail unless="jflex.present">&#xA0;
-      ##################################################################
-      JFlex not found.
-      JFlex Home: ${jflex.home}
-
-      Please install the jFlex 1.5 version (currently not released)
-      from its SVN repository:
-
-       svn co -r 722 https://svn.code.sf.net/p/jflex/code/trunk jflex
-       cd jflex
-       mvn install
-
-      Then, create a build.properties file either in your home
-      directory, or within the Lucene directory and set the jflex.home
-      property to the path where the JFlex trunk checkout is located
-      (in the above example it's the directory called "jflex").
-
-      ##################################################################
-    </fail>
-  </target>
-
   <target name="compile-core" depends="init, clover"
           description="Compiles core classes">
     <compile
@@ -2197,7 +2161,15 @@ ${ant.project.name}.test.dependencies=${
       </scp>
     </sequential>
   </macrodef>
-  
+
+  <!-- JFlex task -->
+  <target name="-install-jflex" unless="jflex.loaded" depends="ivy-availability-check,ivy-configure">
+    <ivy:cachepath organisation="de.jflex" module="jflex" revision="1.5.0"
+                   inline="true" conf="default" transitive="true" pathid="jflex.classpath"/>
+    <taskdef name="jflex" classname="jflex.anttask.JFlexTask" classpathref="jflex.classpath"/>
+    <property name="jflex.loaded" value="true"/>
+  </target>
+
   <!-- GROOVY scripting engine for ANT tasks -->
   <target name="resolve-groovy" unless="groovy.loaded" depends="ivy-availability-check,ivy-configure">
     <ivy:cachepath organisation="org.codehaus.groovy" module="groovy-all" revision="2.2.1"

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/codecs/lucene40/Lucene40SegmentInfoFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/codecs/lucene40/Lucene40SegmentInfoFormat.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/codecs/lucene40/Lucene40SegmentInfoFormat.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/codecs/lucene40/Lucene40SegmentInfoFormat.java Wed Jan 29 11:14:53 2014
@@ -67,11 +67,12 @@ import org.apache.lucene.store.DataOutpu
  * 
  * @see SegmentInfos
  * @lucene.experimental
- * @deprecated Only for reading old 4.0-4.5 segments
+ * @deprecated Only for reading old 4.0-4.5 segments, and supporting IndexWriter.addIndexes
  */
 @Deprecated
 public class Lucene40SegmentInfoFormat extends SegmentInfoFormat {
   private final SegmentInfoReader reader = new Lucene40SegmentInfoReader();
+  private final SegmentInfoWriter writer = new Lucene40SegmentInfoWriter();
 
   /** Sole constructor. */
   public Lucene40SegmentInfoFormat() {
@@ -82,9 +83,11 @@ public class Lucene40SegmentInfoFormat e
     return reader;
   }
 
+  // we must unfortunately support write, to allow addIndexes to write a new .si with rewritten filenames:
+  // see LUCENE-5377
   @Override
   public SegmentInfoWriter getSegmentInfoWriter() {
-    throw new UnsupportedOperationException("this codec can only be used for reading");
+    return writer;
   }
 
   /** File extension used to store {@link SegmentInfo}. */

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java Wed Jan 29 11:14:53 2014
@@ -795,11 +795,7 @@ public class IndexWriter implements Clos
         if (infoStream.isEnabled("IW")) {
           infoStream.message("IW", "init: hit exception on init; releasing write lock");
         }
-        try {
-          writeLock.release();
-        } catch (Throwable t) {
-          // don't mask the original exception
-        }
+        IOUtils.closeWhileHandlingException(writeLock);
         writeLock = null;
       }
     }
@@ -1052,7 +1048,7 @@ public class IndexWriter implements Clos
       }
 
       if (writeLock != null) {
-        writeLock.release();                          // release write lock
+        writeLock.close();                          // release write lock
         writeLock = null;
       }
       synchronized(this) {
@@ -1112,7 +1108,11 @@ public class IndexWriter implements Clos
   }
 
   /**
-   * Returns true if this index has deletions (including buffered deletions).
+   * Returns true if this index has deletions (including
+   * buffered deletions).  Note that this will return true
+   * if there are buffered Term/Query deletions, even if it
+   * turns out those buffered deletions don't match any
+   * documents.
    */
   public synchronized boolean hasDeletions() {
     ensureOpen();
@@ -2358,6 +2358,28 @@ public class IndexWriter implements Clos
     }
   }
 
+  /** Acquires write locks on all the directories; be sure
+   *  to match with a call to {@link IOUtils#close} in a
+   *  finally clause. */
+  private List<Lock> acquireWriteLocks(Directory... dirs) throws IOException {
+    List<Lock> locks = new ArrayList<Lock>();
+    for(int i=0;i<dirs.length;i++) {
+      boolean success = false;
+      try {
+        Lock lock = dirs[i].makeLock(WRITE_LOCK_NAME);
+        locks.add(lock);
+        lock.obtain(config.getWriteLockTimeout());
+        success = true;
+      } finally {
+        if (success == false) {
+          // Release all previously acquired locks:
+          IOUtils.closeWhileHandlingException(locks);
+        }
+      }
+    }
+    return locks;
+  }
+
   /**
    * Adds all segments from an array of indexes into this index.
    *
@@ -2368,11 +2390,10 @@ public class IndexWriter implements Clos
    * with this method.
    *
    * <p>
-   * <b>NOTE:</b> the index in each {@link Directory} must not be
-   * changed (opened by a writer) while this method is
-   * running.  This method does not acquire a write lock in
-   * each input Directory, so it is up to the caller to
-   * enforce this.
+   * <b>NOTE:</b> this method acquires the write lock in
+   * each directory, to ensure that no {@code IndexWriter}
+   * is currently open or tries to open while this is
+   * running.
    *
    * <p>This method is transactional in how Exceptions are
    * handled: it does not commit a new segments_N file until
@@ -2401,12 +2422,18 @@ public class IndexWriter implements Clos
    *
    * @throws CorruptIndexException if the index is corrupt
    * @throws IOException if there is a low-level IO error
+   * @throws LockObtainFailedException if we were unable to
+   *   acquire the write lock in at least one directory
    */
   public void addIndexes(Directory... dirs) throws IOException {
     ensureOpen();
 
     noDupDirs(dirs);
 
+    List<Lock> locks = acquireWriteLocks(dirs);
+
+    boolean successTop = false;
+
     try {
       if (infoStream.isEnabled("IW")) {
         infoStream.message("IW", "flush at addIndexes(Directory...)");
@@ -2477,8 +2504,16 @@ public class IndexWriter implements Clos
         checkpoint();
       }
 
+      successTop = true;
+
     } catch (OutOfMemoryError oom) {
       handleOOM(oom, "addIndexes(Directory...)");
+    } finally {
+      if (successTop) {
+        IOUtils.close(locks);
+      } else {
+        IOUtils.closeWhileHandlingException(locks);
+      }
     }
   }
   
@@ -2893,12 +2928,15 @@ public class IndexWriter implements Clos
     commitInternal();
   }
 
-  /** Returns true if there are changes that have not been
-   *  committed.  Note that if a merge kicked off as a
-   *  result of flushing a new segment during {@link
-   *  #commit}, or a concurrent merged finished,
-   *  this method may return true right after you
-   *  had just called {@link #commit}. */
+  /** Returns true if there may be changes that have not been
+   *  committed.  There are cases where this may return true
+   *  when there are no actual "real" changes to the index,
+   *  for example if you've deleted by Term or Query but
+   *  that Term or Query does not match any documents.
+   *  Also, if a merge kicked off as a result of flushing a
+   *  new segment during {@link #commit}, or a concurrent
+   *  merged finished, this method may return true right
+   *  after you had just called {@link #commit}. */
   public final boolean hasUncommittedChanges() {
     return changeCount != lastCommitChangeCount || docWriter.anyChanges() || bufferedUpdatesStream.any();
   }
@@ -4408,7 +4446,7 @@ public class IndexWriter implements Clos
    * currently accessing this index.
    */
   public static void unlock(Directory directory) throws IOException {
-    directory.makeLock(IndexWriter.WRITE_LOCK_NAME).release();
+    directory.makeLock(IndexWriter.WRITE_LOCK_NAME).close();
   }
 
   /** If {@link DirectoryReader#open(IndexWriter,boolean)} has

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/AutomatonQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/AutomatonQuery.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/AutomatonQuery.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/AutomatonQuery.java Wed Jan 29 11:14:53 2014
@@ -128,4 +128,9 @@ public class AutomatonQuery extends Mult
     buffer.append(ToStringUtils.boost(getBoost()));
     return buffer.toString();
   }
+  
+  /** Returns the automaton used to create this query */
+  public Automaton getAutomaton() {
+    return automaton;
+  }
 }

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/BooleanQuery.java Wed Jan 29 11:14:53 2014
@@ -62,8 +62,9 @@ public class BooleanQuery extends Query 
    * Default value is 1024.
    */
   public static void setMaxClauseCount(int maxClauseCount) {
-    if (maxClauseCount < 1)
+    if (maxClauseCount < 1) {
       throw new IllegalArgumentException("maxClauseCount must be >= 1");
+    }
     BooleanQuery.maxClauseCount = maxClauseCount;
   }
 
@@ -138,8 +139,9 @@ public class BooleanQuery extends Query 
    * @see #getMaxClauseCount()
    */
   public void add(BooleanClause clause) {
-    if (clauses.size() >= maxClauseCount)
+    if (clauses.size() >= maxClauseCount) {
       throw new TooManyClauses();
+    }
 
     clauses.add(clause);
   }
@@ -182,7 +184,9 @@ public class BooleanQuery extends Query 
         BooleanClause c = clauses.get(i);
         Weight w = c.getQuery().createWeight(searcher);
         weights.add(w);
-        if (!c.isProhibited()) maxCoord++;
+        if (!c.isProhibited()) {
+          maxCoord++;
+        }
       }
     }
 
@@ -195,9 +199,10 @@ public class BooleanQuery extends Query 
       for (int i = 0 ; i < weights.size(); i++) {
         // call sumOfSquaredWeights for all clauses in case of side effects
         float s = weights.get(i).getValueForNormalization();         // sum sub weights
-        if (!clauses.get(i).isProhibited())
+        if (!clauses.get(i).isProhibited()) {
           // only add to sum for non-prohibited clauses
           sum += s;
+        }
       }
 
       sum *= getBoost() * getBoost();             // boost each sub-weight
@@ -258,8 +263,9 @@ public class BooleanQuery extends Query 
             sumExpl.addDetail(r);
             fail = true;
           }
-          if (c.getOccur() == Occur.SHOULD)
+          if (c.getOccur() == Occur.SHOULD) {
             shouldMatchCount++;
+          }
         } else if (c.isRequired()) {
           Explanation r = new Explanation(0.0f, "no match on required clause (" + c.getQuery().toString() + ")");
           r.addDetail(e);
@@ -422,8 +428,9 @@ public class BooleanQuery extends Query 
     }
     if (clone != null) {
       return clone;                               // some clauses rewrote
-    } else
+    } else {
       return this;                                // no clauses rewrote
+    }
   }
 
   // inherit javadoc
@@ -447,17 +454,18 @@ public class BooleanQuery extends Query 
   @Override
   public String toString(String field) {
     StringBuilder buffer = new StringBuilder();
-    boolean needParens=(getBoost() != 1.0) || (getMinimumNumberShouldMatch()>0) ;
+    boolean needParens= getBoost() != 1.0 || getMinimumNumberShouldMatch() > 0;
     if (needParens) {
       buffer.append("(");
     }
 
     for (int i = 0 ; i < clauses.size(); i++) {
       BooleanClause c = clauses.get(i);
-      if (c.isProhibited())
+      if (c.isProhibited()) {
         buffer.append("-");
-      else if (c.isRequired())
+      } else if (c.isRequired()) {
         buffer.append("+");
+      }
 
       Query subQuery = c.getQuery();
       if (subQuery != null) {
@@ -472,8 +480,9 @@ public class BooleanQuery extends Query 
         buffer.append("null");
       }
 
-      if (i != clauses.size()-1)
+      if (i != clauses.size()-1) {
         buffer.append(" ");
+      }
     }
 
     if (needParens) {
@@ -485,8 +494,7 @@ public class BooleanQuery extends Query 
       buffer.append(getMinimumNumberShouldMatch());
     }
 
-    if (getBoost() != 1.0f)
-    {
+    if (getBoost() != 1.0f) {
       buffer.append(ToStringUtils.boost(getBoost()));
     }
 
@@ -496,10 +504,11 @@ public class BooleanQuery extends Query 
   /** Returns true iff <code>o</code> is equal to this. */
   @Override
   public boolean equals(Object o) {
-    if (!(o instanceof BooleanQuery))
+    if (!(o instanceof BooleanQuery)) {
       return false;
+    }
     BooleanQuery other = (BooleanQuery)o;
-    return (this.getBoost() == other.getBoost())
+    return this.getBoost() == other.getBoost()
         && this.clauses.equals(other.clauses)
         && this.getMinimumNumberShouldMatch() == other.getMinimumNumberShouldMatch()
         && this.disableCoord == other.disableCoord;

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/FuzzyQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/FuzzyQuery.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/FuzzyQuery.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/FuzzyQuery.java Wed Jan 29 11:14:53 2014
@@ -138,6 +138,14 @@ public class FuzzyQuery extends MultiTer
   public int getPrefixLength() {
     return prefixLength;
   }
+  
+  /**
+   * Returns true if transpositions should be treated as a primitive edit operation. 
+   * If this is false, comparisons will implement the classic Levenshtein algorithm.
+   */
+  public boolean getTranspositions() {
+    return transpositions;
+  }
 
   @Override
   protected TermsEnum getTermsEnum(Terms terms, AttributeSource atts) throws IOException {

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/spans/SpanMultiTermQueryWrapper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/spans/SpanMultiTermQueryWrapper.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/spans/SpanMultiTermQueryWrapper.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/search/spans/SpanMultiTermQueryWrapper.java Wed Jan 29 11:14:53 2014
@@ -100,6 +100,11 @@ public class SpanMultiTermQueryWrapper<Q
   public String getField() {
     return query.getField();
   }
+  
+  /** Returns the wrapped query */
+  public Query getWrappedQuery() {
+    return query;
+  }
 
   @Override
   public String toString(String field) {
@@ -107,6 +112,10 @@ public class SpanMultiTermQueryWrapper<Q
     builder.append("SpanMultiTermQueryWrapper(");
     builder.append(query.toString(field));
     builder.append(")");
+    if (getBoost() != 1F) {
+      builder.append('^');
+      builder.append(getBoost());
+    }
     return builder.toString();
   }
 
@@ -115,22 +124,26 @@ public class SpanMultiTermQueryWrapper<Q
     final Query q = query.rewrite(reader);
     if (!(q instanceof SpanQuery))
       throw new UnsupportedOperationException("You can only use SpanMultiTermQueryWrapper with a suitable SpanRewriteMethod.");
+    q.setBoost(q.getBoost() * getBoost()); // multiply boost
     return q;
   }
   
   @Override
   public int hashCode() {
-    return 31 * query.hashCode();
+    final int prime = 31;
+    int result = super.hashCode();
+    result = prime * result + query.hashCode();
+    return result;
   }
 
   @Override
-  @SuppressWarnings({"rawtypes","unchecked"})
   public boolean equals(Object obj) {
     if (this == obj) return true;
-    if (obj == null) return false;
+    if (!super.equals(obj)) return false;
     if (getClass() != obj.getClass()) return false;
-    final SpanMultiTermQueryWrapper other = (SpanMultiTermQueryWrapper) obj;
-    return query.equals(other.query);
+    SpanMultiTermQueryWrapper<?> other = (SpanMultiTermQueryWrapper<?>) obj;
+    if (!query.equals(other.query)) return false;
+    return true;
   }
 
   /** Abstract class that defines how the query is rewritten. */

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/Lock.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/Lock.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/Lock.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/Lock.java Wed Jan 29 11:14:53 2014
@@ -17,9 +17,11 @@ package org.apache.lucene.store;
  * limitations under the License.
  */
 
-import org.apache.lucene.util.ThreadInterruptedException;
+import java.io.Closeable;
 import java.io.IOException;
 
+import org.apache.lucene.util.ThreadInterruptedException;
+
 /** An interprocess mutex lock.
  * <p>Typical use might look like:<pre class="prettyprint">
  * new Lock.With(directory.makeLock("my.lock")) {
@@ -30,8 +32,10 @@ import java.io.IOException;
  * </pre>
  *
  * @see Directory#makeLock(String)
+ *
+ * @lucene.internal
  */
-public abstract class Lock {
+public abstract class Lock implements Closeable {
 
   /** How long {@link #obtain(long)} waits, in milliseconds,
    *  in between attempts to acquire the lock. */
@@ -42,7 +46,8 @@ public abstract class Lock {
   public static final long LOCK_OBTAIN_WAIT_FOREVER = -1;
 
   /** Attempts to obtain exclusive access and immediately return
-   *  upon success or failure.
+   *  upon success or failure.  Use {@link #close} to
+   *  release the lock.
    * @return true iff exclusive access is obtained
    */
   public abstract boolean obtain() throws IOException;
@@ -98,7 +103,7 @@ public abstract class Lock {
   }
 
   /** Releases exclusive access. */
-  public abstract void release() throws IOException;
+  public abstract void close() throws IOException;
 
   /** Returns true if the resource is currently locked.  Note that one must
    * still call {@link #obtain()} before using the resource. */
@@ -134,8 +139,9 @@ public abstract class Lock {
          locked = lock.obtain(lockWaitTimeout);
          return doBody();
       } finally {
-        if (locked)
-          lock.release();
+        if (locked) {
+          lock.close();
+        }
       }
     }
   }

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockReleaseFailedException.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockReleaseFailedException.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockReleaseFailedException.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockReleaseFailedException.java Wed Jan 29 11:14:53 2014
@@ -22,7 +22,7 @@ import java.io.IOException;
 /**
  * This exception is thrown when the <code>write.lock</code>
  * could not be released.
- * @see Lock#release()
+ * @see Lock#close()
  */
 public class LockReleaseFailedException extends IOException {
   public LockReleaseFailedException(String message) {

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockStressTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockStressTest.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockStressTest.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/LockStressTest.java Wed Jan 29 11:14:53 2014
@@ -102,7 +102,7 @@ public class LockStressTest {
 
       if (obtained) {
         System.out.print("l");
-        l.release();
+        l.close();
       }
       Thread.sleep(sleepTimeMS);
     }

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NativeFSLockFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NativeFSLockFactory.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NativeFSLockFactory.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NativeFSLockFactory.java Wed Jan 29 11:14:53 2014
@@ -107,7 +107,7 @@ public class NativeFSLockFactory extends
       // NOTE: makeLock fixes the lock name by prefixing it w/ lockPrefix.
       // Therefore it should be called before the code block next which prefixes
       // the given name.
-      makeLock(lockName).release();
+      makeLock(lockName).close();
 
       if (lockPrefix != null) {
         lockName = lockPrefix + "-" + lockName;
@@ -259,7 +259,7 @@ class NativeFSLock extends Lock {
   }
 
   @Override
-  public synchronized void release() throws IOException {
+  public synchronized void close() throws IOException {
     if (lockExists()) {
       try {
         lock.release();
@@ -298,7 +298,7 @@ class NativeFSLock extends Lock {
         }
       } finally {
         if (obtained) {
-          release();
+          close();
         }
       }
     }
@@ -317,7 +317,7 @@ class NativeFSLock extends Lock {
     // Try to obtain and release (if was locked) the lock
     try {
       boolean obtained = obtain();
-      if (obtained) release();
+      if (obtained) close();
       return !obtained;
     } catch (IOException ioe) {
       return false;

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NoLockFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NoLockFactory.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NoLockFactory.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/NoLockFactory.java Wed Jan 29 11:14:53 2014
@@ -55,7 +55,7 @@ class NoLock extends Lock {
   }
 
   @Override
-  public void release() {
+  public void close() {
   }
 
   @Override

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SimpleFSLockFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SimpleFSLockFactory.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SimpleFSLockFactory.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SimpleFSLockFactory.java Wed Jan 29 11:14:53 2014
@@ -128,9 +128,10 @@ class SimpleFSLock extends Lock {
   }
 
   @Override
-  public void release() throws LockReleaseFailedException {
-    if (lockFile.exists() && !lockFile.delete())
+  public void close() throws LockReleaseFailedException {
+    if (lockFile.exists() && !lockFile.delete()) {
       throw new LockReleaseFailedException("failed to delete " + lockFile);
+    }
   }
 
   @Override

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SingleInstanceLockFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SingleInstanceLockFactory.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SingleInstanceLockFactory.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/SingleInstanceLockFactory.java Wed Jan 29 11:14:53 2014
@@ -71,7 +71,7 @@ class SingleInstanceLock extends Lock {
   }
 
   @Override
-  public void release() {
+  public void close() {
     synchronized(locks) {
       locks.remove(lockName);
     }

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/VerifyingLockFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/VerifyingLockFactory.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/VerifyingLockFactory.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/store/VerifyingLockFactory.java Wed Jan 29 11:14:53 2014
@@ -87,10 +87,10 @@ public class VerifyingLockFactory extend
     }
 
     @Override
-    public synchronized void release() throws IOException {
+    public synchronized void close() throws IOException {
       if (isLocked()) {
         verify((byte) 0);
-        lock.release();
+        lock.close();
       }
     }
   }

Modified: lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/util/PriorityQueue.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/util/PriorityQueue.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/util/PriorityQueue.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/java/org/apache/lucene/util/PriorityQueue.java Wed Jan 29 11:14:53 2014
@@ -41,11 +41,11 @@ public abstract class PriorityQueue<T> {
   public PriorityQueue(int maxSize, boolean prepopulate) {
     size = 0;
     int heapSize;
-    if (0 == maxSize)
+    if (0 == maxSize) {
       // We allocate 1 extra to avoid if statement in top()
       heapSize = 2;
-    else {
-      if (maxSize == Integer.MAX_VALUE) {
+    } else {
+      if (maxSize > ArrayUtil.MAX_ARRAY_LENGTH) {
         // Don't wrap heapSize to -1, in this case, which
         // causes a confusing NegativeArraySizeException.
         // Note that very likely this will simply then hit
@@ -54,7 +54,8 @@ public abstract class PriorityQueue<T> {
         // in this case, but it's very unlikely in practice
         // one will actually insert this many objects into
         // the PQ:
-        heapSize = Integer.MAX_VALUE;
+        // Throw exception to prevent confusing OOME:
+        throw new IllegalArgumentException("maxSize must be <= " + ArrayUtil.MAX_ARRAY_LENGTH + "; got: " + maxSize);
       } else {
         // NOTE: we add +1 because all access to heap is
         // 1-based not 0-based.  heap[0] is unused.
@@ -183,8 +184,9 @@ public abstract class PriorityQueue<T> {
       size--;
       downHeap();               // adjust heap
       return result;
-    } else
+    } else {
       return null;
+    }
   }
   
   /**

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40DocValuesFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40DocValuesFormat.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40DocValuesFormat.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40DocValuesFormat.java Wed Jan 29 11:14:53 2014
@@ -19,12 +19,18 @@ package org.apache.lucene.codecs.lucene4
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BaseDocValuesFormatTestCase;
+import org.junit.BeforeClass;
 
 /**
  * Tests Lucene40DocValuesFormat
  */
 public class TestLucene40DocValuesFormat extends BaseDocValuesFormatTestCase {
   private final Codec codec = new Lucene40RWCodec();
+  
+  @BeforeClass
+  public static void beforeClass() {
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true; // explicitly instantiates ancient codec
+  }
 
   @Override
   protected Codec getCodec() {

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsFormat.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsFormat.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsFormat.java Wed Jan 29 11:14:53 2014
@@ -19,6 +19,7 @@ package org.apache.lucene.codecs.lucene4
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BasePostingsFormatTestCase;
+import org.junit.BeforeClass;
 
 /**
  * Tests Lucene40PostingsFormat
@@ -26,6 +27,11 @@ import org.apache.lucene.index.BasePosti
 public class TestLucene40PostingsFormat extends BasePostingsFormatTestCase {
   private final Codec codec = new Lucene40RWCodec();
 
+  @BeforeClass
+  public static void beforeClass() {
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true; // explicitly instantiates ancient codec
+  }
+  
   @Override
   protected Codec getCodec() {
     return codec;

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsReader.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsReader.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40PostingsReader.java Wed Jan 29 11:14:53 2014
@@ -34,6 +34,7 @@ import org.apache.lucene.index.Term;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util._TestUtil;
+import org.junit.BeforeClass;
 
 public class TestLucene40PostingsReader extends LuceneTestCase {
   static final String terms[] = new String[100];
@@ -42,6 +43,11 @@ public class TestLucene40PostingsReader 
       terms[i] = Integer.toString(i+1);
     }
   }
+  
+  @BeforeClass
+  public static void beforeClass() {
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true; // explicitly instantiates ancient codec
+  }
 
   /** tests terms with different probabilities of being in the document.
    *  depends heavily on term vectors cross-check at checkIndex

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40StoredFieldsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40StoredFieldsFormat.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40StoredFieldsFormat.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40StoredFieldsFormat.java Wed Jan 29 11:14:53 2014
@@ -19,9 +19,15 @@ package org.apache.lucene.codecs.lucene4
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BaseStoredFieldsFormatTestCase;
+import org.junit.BeforeClass;
 
 public class TestLucene40StoredFieldsFormat extends BaseStoredFieldsFormatTestCase {
   
+  @BeforeClass
+  public static void beforeClass() {
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true; // explicitly instantiates ancient codec
+  }
+  
   @Override
   protected Codec getCodec() {
     return new Lucene40RWCodec();

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40TermVectorsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40TermVectorsFormat.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40TermVectorsFormat.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestLucene40TermVectorsFormat.java Wed Jan 29 11:14:53 2014
@@ -19,9 +19,15 @@ package org.apache.lucene.codecs.lucene4
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BaseTermVectorsFormatTestCase;
+import org.junit.BeforeClass;
 
 public class TestLucene40TermVectorsFormat extends BaseTermVectorsFormatTestCase {
 
+  @BeforeClass
+  public static void beforeClass() {
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true; // explicitly instantiates ancient codec
+  }
+  
   @Override
   protected Codec getCodec() {
     return new Lucene40RWCodec();

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestReuseDocsEnum.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestReuseDocsEnum.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestReuseDocsEnum.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene40/TestReuseDocsEnum.java Wed Jan 29 11:14:53 2014
@@ -37,10 +37,16 @@ import org.apache.lucene.util.IOUtils;
 import org.apache.lucene.util.LineFileDocs;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util._TestUtil;
+import org.junit.BeforeClass;
 
 // TODO: really this should be in BaseTestPF or somewhere else? useful test!
 public class TestReuseDocsEnum extends LuceneTestCase {
 
+  @BeforeClass
+  public static void beforeClass() {
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true; // explicitly instantiates ancient codec
+  }
+  
   public void testReuseDocsEnumNoReuse() throws IOException {
     Directory dir = newDirectory();
     Codec cp = _TestUtil.alwaysPostingsFormat(new Lucene40RWPostingsFormat());

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41StoredFieldsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41StoredFieldsFormat.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41StoredFieldsFormat.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41StoredFieldsFormat.java Wed Jan 29 11:14:53 2014
@@ -19,9 +19,15 @@ package org.apache.lucene.codecs.lucene4
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BaseStoredFieldsFormatTestCase;
+import org.junit.BeforeClass;
 
 public class TestLucene41StoredFieldsFormat extends BaseStoredFieldsFormatTestCase {
   
+  @BeforeClass
+  public static void beforeClass() {
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true; // explicitly instantiates ancient codec
+  }
+  
   @Override
   protected Codec getCodec() {
     return new Lucene41RWCodec();

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene42/TestLucene42DocValuesFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene42/TestLucene42DocValuesFormat.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene42/TestLucene42DocValuesFormat.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/codecs/lucene42/TestLucene42DocValuesFormat.java Wed Jan 29 11:14:53 2014
@@ -19,6 +19,7 @@ package org.apache.lucene.codecs.lucene4
 
 import org.apache.lucene.codecs.Codec;
 import org.apache.lucene.index.BaseCompressingDocValuesFormatTestCase;
+import org.junit.BeforeClass;
 
 /**
  * Tests Lucene42DocValuesFormat
@@ -26,6 +27,11 @@ import org.apache.lucene.index.BaseCompr
 public class TestLucene42DocValuesFormat extends BaseCompressingDocValuesFormatTestCase {
   private final Codec codec = new Lucene42RWCodec();
 
+  @BeforeClass
+  public static void beforeClass() {
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true; // explicitly instantiates ancient codec
+  }
+  
   @Override
   protected Codec getCodec() {
     return codec;

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestAddIndexes.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestAddIndexes.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestAddIndexes.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestAddIndexes.java Wed Jan 29 11:14:53 2014
@@ -41,8 +41,10 @@ import org.apache.lucene.search.PhraseQu
 import org.apache.lucene.store.AlreadyClosedException;
 import org.apache.lucene.store.BaseDirectoryWrapper;
 import org.apache.lucene.store.Directory;
+import org.apache.lucene.store.LockObtainFailedException;
 import org.apache.lucene.store.MockDirectoryWrapper;
 import org.apache.lucene.store.RAMDirectory;
+import org.apache.lucene.util.IOUtils;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util._TestUtil;
 
@@ -1244,4 +1246,27 @@ public class TestAddIndexes extends Luce
     dest.close();
   }
 
+  /** Make sure an open IndexWriter on an incoming Directory
+   *  causes a LockObtainFailedException */
+  public void testLocksBlock() throws Exception {
+    Directory src = newDirectory();
+    RandomIndexWriter w1 = new RandomIndexWriter(random(), src);
+    w1.addDocument(new Document());
+    w1.commit();
+
+    Directory dest = newDirectory();
+
+    IndexWriterConfig iwc = newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random()));
+    iwc.setWriteLockTimeout(1);
+    RandomIndexWriter w2 = new RandomIndexWriter(random(), dest, iwc);
+
+    try {
+      w2.addIndexes(src);
+      fail("did not hit expected exception");
+    } catch (LockObtainFailedException lofe) {
+      // expected
+    }
+
+    IOUtils.close(w1, w2, src, dest);
+  }
 }

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java Wed Jan 29 11:14:53 2014
@@ -213,6 +213,7 @@ public class TestBackwardsCompatibility 
 
   @BeforeClass
   public static void beforeClass() throws Exception {
+    assertFalse("test infra is broken!", LuceneTestCase.OLD_FORMAT_IMPERSONATION_IS_ACTIVE);
     List<String> names = new ArrayList<String>(oldNames.length + oldSingleSegmentNames.length);
     names.addAll(Arrays.asList(oldNames));
     names.addAll(Arrays.asList(oldSingleSegmentNames));

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterReader.java Wed Jan 29 11:14:53 2014
@@ -730,8 +730,10 @@ public class TestIndexWriterReader exten
     final long endTime = (long) (System.currentTimeMillis() + 1000.*SECONDS);
     final List<Throwable> excs = Collections.synchronizedList(new ArrayList<Throwable>());
 
-    final Thread[] threads = new Thread[numThreads];
-    for(int i=0;i<numThreads;i++) {
+    // Only one thread can addIndexes at a time, because
+    // IndexWriter acquires a write lock in each directory:
+    final Thread[] threads = new Thread[1];
+    for(int i=0;i<threads.length;i++) {
       threads[i] = new Thread() {
           @Override
           public void run() {
@@ -764,7 +766,7 @@ public class TestIndexWriterReader exten
       lastCount = count;
     }
 
-    for(int i=0;i<numThreads;i++) {
+    for(int i=0;i<threads.length;i++) {
       threads[i].join();
     }
     // final check

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestNumericDocValuesUpdates.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestNumericDocValuesUpdates.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestNumericDocValuesUpdates.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/index/TestNumericDocValuesUpdates.java Wed Jan 29 11:14:53 2014
@@ -946,9 +946,11 @@ public class TestNumericDocValuesUpdates
     Codec[] oldCodecs = new Codec[] { new Lucene40RWCodec(), new Lucene41RWCodec(), new Lucene42RWCodec(), new Lucene45RWCodec() };
     Directory dir = newDirectory();
     
+    boolean oldValue = OLD_FORMAT_IMPERSONATION_IS_ACTIVE;
     // create a segment with an old Codec
     IndexWriterConfig conf = newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random()));
     conf.setCodec(oldCodecs[random().nextInt(oldCodecs.length)]);
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true;
     IndexWriter writer = new IndexWriter(dir, conf);
     Document doc = new Document();
     doc.add(new StringField("id", "doc", Store.NO));
@@ -966,7 +968,7 @@ public class TestNumericDocValuesUpdates
     } catch (UnsupportedOperationException e) {
       writer.rollback(); 
     } finally {
-      OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true;
+      OLD_FORMAT_IMPERSONATION_IS_ACTIVE = oldValue;
     }
     
     dir.close();

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/search/TestSubScorerFreqs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/search/TestSubScorerFreqs.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/search/TestSubScorerFreqs.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/search/TestSubScorerFreqs.java Wed Jan 29 11:14:53 2014
@@ -92,7 +92,7 @@ public class TestSubScorerFreqs extends 
     
     public void setSubScorers(Scorer scorer, String relationship) {
       for (ChildScorer child : scorer.getChildren()) {
-        if (relationships.contains(child.relationship)) {
+        if (scorer instanceof AssertingScorer || relationships.contains(child.relationship)) {
           setSubScorers(child.child, child.relationship);
         }
       }
@@ -180,16 +180,17 @@ public class TestSubScorerFreqs extends 
         assertEquals(includeOptional ? 5 : 4, doc0.size());
         assertEquals(1.0F, doc0.get(aQuery), FLOAT_TOLERANCE);
         assertEquals(4.0F, doc0.get(dQuery), FLOAT_TOLERANCE);
-        if (includeOptional)
+        if (includeOptional) {
           assertEquals(3.0F, doc0.get(cQuery), FLOAT_TOLERANCE);
+        }
 
         Map<Query, Float> doc1 = c.docCounts.get(++i);
         assertEquals(includeOptional ? 5 : 4, doc1.size());
         assertEquals(1.0F, doc1.get(aQuery), FLOAT_TOLERANCE);
         assertEquals(1.0F, doc1.get(dQuery), FLOAT_TOLERANCE);
-        if (includeOptional)
+        if (includeOptional) {
           assertEquals(1.0F, doc1.get(cQuery), FLOAT_TOLERANCE);
-
+        }
       }
     }
   }

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestDirectory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestDirectory.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestDirectory.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestDirectory.java Wed Jan 29 11:14:53 2014
@@ -202,12 +202,12 @@ public class TestDirectory extends Lucen
         }
       }
 
-      lock.release();
+      lock.close();
       
       // now lock with different dir
       lock = dirs[(i+1)%dirs.length].makeLock(lockname);
       assertTrue(lock.obtain());
-      lock.release();
+      lock.close();
     }
 
     for (int i=0; i<dirs.length; i++) {

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java Wed Jan 29 11:14:53 2014
@@ -51,6 +51,8 @@ public class TestFileSwitchDirectory ext
     
     FileSwitchDirectory fsd = new FileSwitchDirectory(fileExtensions, primaryDir, secondaryDir, true);
     // for now we wire Lucene40Codec because we rely upon its specific impl
+    boolean oldValue = OLD_FORMAT_IMPERSONATION_IS_ACTIVE;
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = true;
     IndexWriter writer = new IndexWriter(
         fsd,
         new IndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random())).
@@ -82,6 +84,7 @@ public class TestFileSwitchDirectory ext
       assertNotNull(files[i]);
     }
     fsd.close();
+    OLD_FORMAT_IMPERSONATION_IS_ACTIVE = oldValue;
   }
   
   private Directory newFSSwitchDirectory(Set<String> primaryExtensions) throws IOException {

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLock.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLock.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLock.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLock.java Wed Jan 29 11:14:53 2014
@@ -44,7 +44,7 @@ public class TestLock extends LuceneTest
             return false;
         }
         @Override
-        public void release() {
+        public void close() {
             // do nothing
         }
         @Override

Modified: lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLockFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLockFactory.java?rev=1562403&r1=1562402&r2=1562403&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLockFactory.java (original)
+++ lucene/dev/branches/lucene5376/lucene/core/src/test/org/apache/lucene/store/TestLockFactory.java Wed Jan 29 11:14:53 2014
@@ -184,16 +184,16 @@ public class TestLockFactory extends Luc
 
       assertTrue("failed to obtain lock", l.obtain());
       assertTrue("succeeded in obtaining lock twice", !l2.obtain());
-      l.release();
+      l.close();
 
       assertTrue("failed to obtain 2nd lock after first one was freed", l2.obtain());
-      l2.release();
+      l2.close();
 
       // Make sure we can obtain first one again, test isLocked():
       assertTrue("failed to obtain lock", l.obtain());
       assertTrue(l.isLocked());
       assertTrue(l2.isLocked());
-      l.release();
+      l.close();
       assertFalse(l.isLocked());
       assertFalse(l2.isLocked());
     }
@@ -207,7 +207,7 @@ public class TestLockFactory extends Luc
       
       Lock l = new NativeFSLockFactory(TEMP_DIR).makeLock("test.lock");
       assertTrue("failed to obtain lock", l.obtain());
-      l.release();
+      l.close();
       assertFalse("failed to release lock", l.isLocked());
       if (lockFile.exists()) {
         lockFile.delete();
@@ -225,12 +225,12 @@ public class TestLockFactory extends Luc
       assertTrue("failed to obtain lock", l.obtain());
       try {
         assertTrue(l2.isLocked());
-        l2.release();
+        l2.close();
         fail("should not have reached here. LockReleaseFailedException should have been thrown");
       } catch (LockReleaseFailedException e) {
         // expected
       } finally {
-        l.release();
+        l.close();
       }
     }
 
@@ -409,7 +409,7 @@ public class TestLockFactory extends Luc
                 return true;
             }
             @Override
-            public void release() {
+            public void close() {
                 // do nothing
             }
             @Override



Mime
View raw message