You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by si...@apache.org on 2023/10/25 21:37:06 UTC
[lucene] branch branch_9x updated: Close IndexWriter and Directory in try blocks Relates to #12685
This is an automated email from the ASF dual-hosted git repository.
simonw pushed a commit to branch branch_9x
in repository https://gitbox.apache.org/repos/asf/lucene.git
The following commit(s) were added to refs/heads/branch_9x by this push:
new 028b3ee5257 Close IndexWriter and Directory in try blocks Relates to #12685
028b3ee5257 is described below
commit 028b3ee5257b6d1ab12db210c916b3c6dca1f1c6
Author: Simon Willnauer <si...@apache.org>
AuthorDate: Wed Oct 25 23:36:02 2023 +0200
Close IndexWriter and Directory in try blocks Relates to #12685
---
.../org/apache/lucene/index/TestIndexWriter.java | 70 +++++++++++-----------
1 file changed, 36 insertions(+), 34 deletions(-)
diff --git a/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java b/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
index 8ca88ba6912..b271a59dcdb 100644
--- a/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
+++ b/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
@@ -1767,43 +1767,45 @@ public class TestIndexWriter extends LuceneTestCase {
}
public void testCarryOverHasBlocks() throws Exception {
- Directory dir = newDirectory();
- IndexWriter w = new IndexWriter(dir, new IndexWriterConfig(new MockAnalyzer(random())));
+ try (Directory dir = newDirectory()) {
+ try (IndexWriter w =
+ new IndexWriter(dir, new IndexWriterConfig(new MockAnalyzer(random())))) {
- final List<Document> docs = new ArrayList<>();
- docs.add(new Document());
- w.updateDocuments(new Term("foo", "bar"), docs);
- w.commit();
- try (DirectoryReader reader = DirectoryReader.open(dir)) {
- SegmentCommitInfo segmentInfo =
- ((SegmentReader) reader.leaves().get(0).reader()).getSegmentInfo();
- assertFalse(segmentInfo.info.getHasBlocks());
- }
+ final List<Document> docs = new ArrayList<>();
+ docs.add(new Document());
+ w.updateDocuments(new Term("foo", "bar"), docs);
+ w.commit();
+ try (DirectoryReader reader = DirectoryReader.open(dir)) {
+ SegmentCommitInfo segmentInfo =
+ ((SegmentReader) reader.leaves().get(0).reader()).getSegmentInfo();
+ assertFalse(segmentInfo.info.getHasBlocks());
+ }
- docs.add(new Document()); // now we have 2 docs
- w.updateDocuments(new Term("foo", "bar"), docs);
- w.commit();
- try (DirectoryReader reader = DirectoryReader.open(dir)) {
- assertEquals(2, reader.leaves().size());
- SegmentCommitInfo segmentInfo =
- ((SegmentReader) reader.leaves().get(0).reader()).getSegmentInfo();
- assertFalse(
- "codec: " + segmentInfo.info.getCodec().toString(), segmentInfo.info.getHasBlocks());
- segmentInfo = ((SegmentReader) reader.leaves().get(1).reader()).getSegmentInfo();
- assertTrue(
- "codec: " + segmentInfo.info.getCodec().toString(), segmentInfo.info.getHasBlocks());
- }
- w.forceMerge(1, true);
- w.commit();
- try (DirectoryReader reader = DirectoryReader.open(dir)) {
- assertEquals(1, reader.leaves().size());
- SegmentCommitInfo segmentInfo =
- ((SegmentReader) reader.leaves().get(0).reader()).getSegmentInfo();
- assertTrue(
- "codec: " + segmentInfo.info.getCodec().toString(), segmentInfo.info.getHasBlocks());
+ docs.add(new Document()); // now we have 2 docs
+ w.updateDocuments(new Term("foo", "bar"), docs);
+ w.commit();
+ try (DirectoryReader reader = DirectoryReader.open(dir)) {
+ assertEquals(2, reader.leaves().size());
+ SegmentCommitInfo segmentInfo =
+ ((SegmentReader) reader.leaves().get(0).reader()).getSegmentInfo();
+ assertFalse(
+ "codec: " + segmentInfo.info.getCodec().toString(), segmentInfo.info.getHasBlocks());
+ segmentInfo = ((SegmentReader) reader.leaves().get(1).reader()).getSegmentInfo();
+ assertTrue(
+ "codec: " + segmentInfo.info.getCodec().toString(), segmentInfo.info.getHasBlocks());
+ }
+ w.forceMerge(1, true);
+ w.commit();
+ try (DirectoryReader reader = DirectoryReader.open(dir)) {
+ assertEquals(1, reader.leaves().size());
+ SegmentCommitInfo segmentInfo =
+ ((SegmentReader) reader.leaves().get(0).reader()).getSegmentInfo();
+ assertTrue(
+ "codec: " + segmentInfo.info.getCodec().toString(), segmentInfo.info.getHasBlocks());
+ }
+ w.commit();
+ }
}
- w.commit();
- dir.close();
}
// LUCENE-3872