This is an automated email from the ASF dual-hosted git repository.

nightowl888 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucenenet.git

commit 8ff3022c52a8dd9a1446d515e350e4b20cd155f5
Author: Shad Storhaug <[email protected]>
AuthorDate: Sat Jul 18 01:00:08 2020 +0700

    PERFORMANCE: Lucene.Net.Index.IndexWriter: Replaced FlushTicket LinkedList 
with a Queue
---
 src/Lucene.Net/Index/IndexWriter.cs | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/Lucene.Net/Index/IndexWriter.cs 
b/src/Lucene.Net/Index/IndexWriter.cs
index ef56908..c52595b 100644
--- a/src/Lucene.Net/Index/IndexWriter.cs
+++ b/src/Lucene.Net/Index/IndexWriter.cs
@@ -254,7 +254,7 @@ namespace Lucene.Net.Index
 
         private readonly MergePolicy mergePolicy;
         private readonly IMergeScheduler mergeScheduler;
-        private readonly LinkedList<MergePolicy.OneMerge> pendingMerges = new 
LinkedList<MergePolicy.OneMerge>();
+        private readonly Queue<MergePolicy.OneMerge> pendingMerges = new 
Queue<MergePolicy.OneMerge>();
         private readonly JCG.HashSet<MergePolicy.OneMerge> runningMerges = new 
JCG.HashSet<MergePolicy.OneMerge>();
         private IList<MergePolicy.OneMerge> mergeExceptions = new 
List<MergePolicy.OneMerge>();
         private long mergeGen;
@@ -2467,8 +2467,7 @@ namespace Lucene.Net.Index
                 else
                 {
                     // Advance the merge from pending to running
-                    MergePolicy.OneMerge merge = pendingMerges.First.Value;
-                    pendingMerges.Remove(merge);
+                    MergePolicy.OneMerge merge = pendingMerges.Dequeue();
                     runningMerges.Add(merge);
                     return merge;
                 }
@@ -4665,7 +4664,7 @@ namespace Lucene.Net.Index
 
                 EnsureValidMerge(merge);
 
-                pendingMerges.AddLast(merge);
+                pendingMerges.Enqueue(merge);
 
                 if (infoStream.IsEnabled("IW"))
                 {

Reply via email to