Lucene.Net.Misc.IndexMergeTool: Added try-finally block to properly dispose of directories.
Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/38187d74 Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/38187d74 Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/38187d74 Branch: refs/heads/master Commit: 38187d7454c65817c5c0aa6cc7e68d20d3cd8119 Parents: 92db055 Author: Shad Storhaug <[email protected]> Authored: Mon Jul 10 18:06:51 2017 +0700 Committer: Shad Storhaug <[email protected]> Committed: Mon Jul 10 18:06:51 2017 +0700 ---------------------------------------------------------------------- src/Lucene.Net.Misc/Misc/IndexMergeTool.cs | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucenenet/blob/38187d74/src/Lucene.Net.Misc/Misc/IndexMergeTool.cs ---------------------------------------------------------------------- diff --git a/src/Lucene.Net.Misc/Misc/IndexMergeTool.cs b/src/Lucene.Net.Misc/Misc/IndexMergeTool.cs index 2c1b305..dafb743 100644 --- a/src/Lucene.Net.Misc/Misc/IndexMergeTool.cs +++ b/src/Lucene.Net.Misc/Misc/IndexMergeTool.cs @@ -46,16 +46,24 @@ namespace Lucene.Net.Misc { OpenMode = OpenMode.CREATE })) { Directory[] indexes = new Directory[args.Length - 1]; - for (int i = 1; i < args.Length; i++) + try { - indexes[i - 1] = FSDirectory.Open(new System.IO.DirectoryInfo(args[i])); - } + for (int i = 1; i < args.Length; i++) + { + indexes[i - 1] = FSDirectory.Open(new System.IO.DirectoryInfo(args[i])); + } - Console.WriteLine("Merging..."); - writer.AddIndexes(indexes); + Console.WriteLine("Merging..."); + writer.AddIndexes(indexes); - Console.WriteLine("Full merge..."); - writer.ForceMerge(1); + Console.WriteLine("Full merge..."); + writer.ForceMerge(1); + } + finally + { + // LUCENENET specific - dispose directories + IOUtils.Dispose(indexes); + } } Console.WriteLine("Done."); }
