@@ -708,12 +708,11 @@ protected void writerSegmentStats(SegmentsStats stats) {
708
708
protected Segment [] getSegmentInfo (SegmentInfos lastCommittedSegmentInfos , boolean verbose ) {
709
709
ensureOpen ();
710
710
Map <String , Segment > segments = new HashMap <>();
711
-
712
711
// first, go over and compute the search ones...
713
- Searcher searcher = acquireSearcher ("segments" );
714
- try {
712
+ try (Searcher searcher = acquireSearcher ("segments" )){
715
713
for (LeafReaderContext reader : searcher .reader ().leaves ()) {
716
- SegmentCommitInfo info = segmentReader (reader .reader ()).getSegmentInfo ();
714
+ final SegmentReader segmentReader = segmentReader (reader .reader ());
715
+ SegmentCommitInfo info = segmentReader .getSegmentInfo ();
717
716
assert !segments .containsKey (info .info .name );
718
717
Segment segment = new Segment (info .info .name );
719
718
segment .search = true ;
@@ -726,7 +725,6 @@ protected Segment[] getSegmentInfo(SegmentInfos lastCommittedSegmentInfos, boole
726
725
} catch (IOException e ) {
727
726
logger .trace ((Supplier <?>) () -> new ParameterizedMessage ("failed to get size for [{}]" , info .info .name ), e );
728
727
}
729
- final SegmentReader segmentReader = segmentReader (reader .reader ());
730
728
segment .memoryInBytes = segmentReader .ramBytesUsed ();
731
729
segment .segmentSort = info .info .getIndexSort ();
732
730
if (verbose ) {
@@ -736,8 +734,6 @@ protected Segment[] getSegmentInfo(SegmentInfos lastCommittedSegmentInfos, boole
736
734
// TODO: add more fine grained mem stats values to per segment info here
737
735
segments .put (info .info .name , segment );
738
736
}
739
- } finally {
740
- searcher .close ();
741
737
}
742
738
743
739
// now, correlate or add the committed ones...
0 commit comments