instructions here: https://www.apache.org/foundation/mailinglists
On Fri, Jan 9, 2026 at 6:07 PM Heitor Peralles <[email protected]> wrote: > > How can I unsubscribe this list? > > On Fri, Jan 9, 2026 at 5:33 PM <[email protected]> wrote: >> >> This is an automated email from the ASF dual-hosted git repository. >> >> mikemccand pushed a commit to branch branch_10x >> in repository https://gitbox.apache.org/repos/asf/lucene.git >> >> >> The following commit(s) were added to refs/heads/branch_10x by this push: >> new 1fdcbaea4ec Expose MergeRateLimiter in runOnMergeFinished hook >> (#15507) >> 1fdcbaea4ec is described below >> >> commit 1fdcbaea4ec9697bfc5a8b3938a540b2dcc708d0 >> Author: Zihan Xu <[email protected]> >> AuthorDate: Fri Jan 9 11:55:20 2026 -0800 >> >> Expose MergeRateLimiter in runOnMergeFinished hook (#15507) >> >> * Expose MergeRateLimiter in runOnMergeFinished hook >> >> Changes runOnMergeFinished method signature in ConcurrentMergeScheduler >> to provide access to OneMerge and MergeRateLimiter parameters. This >> allows applications to monitor merge performance metrics like pause time, >> throttling behavior, and throughput. >> >> - Changed runOnMergeFinished from package-private to protected >> - Added OneMerge merge parameter for merge context >> - Added MergeRateLimiter rateLimiter parameter for metrics access >> >> This enables custom monitoring and observability for merge operations >> without requiring internal API access. >> >> * Fomat code >> >> * Include Javadocs for runOnMergeFinished >> >> * Add @lucene.experimental to the API javadocs >> >> * Add an entry to CHANGES.txt >> >> --------- >> >> Co-authored-by: Zihan Xu <[email protected]> >> Co-authored-by: Michael McCandless <[email protected]> >> --- >> lucene/CHANGES.txt | 6 ++++++ >> .../java/org/apache/lucene/index/ConcurrentMergeScheduler.java | 10 >> ++++++++-- >> 2 files changed, 14 insertions(+), 2 deletions(-) >> >> diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt >> index 66ec78f553d..dcfc576d19c 100644 >> --- a/lucene/CHANGES.txt >> +++ b/lucene/CHANGES.txt >> @@ -39,6 +39,12 @@ API Changes >> >> * GITHUB#15559: Deprecate some public FuzzySet methods ahead of removing >> them in the future (Greg Miller) >> >> +* GITHUB#15507: Expose MergeRateLimiter in >> ConcurrentMergeScheduler.runOnMergeFinished hook. >> + The runOnMergeFinished method signature now includes OneMerge and >> MergeRateLimiter parameters, >> + enabling applications to monitor merge performance metrics like pause >> time, throttling behavior, >> + and throughput. This provides visibility into Lucene's merge backpressure >> mechanisms that can >> + stall indexing when merge debt accumulates. (Zihan Xu) >> + >> New Features >> --------------------- >> * GITHUB#15328: VectorSimilarityFunction.getValues() now implements >> doubleVal allowing its >> diff --git >> a/lucene/core/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java >> b/lucene/core/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java >> index 86a71efd8f4..3f235b93cd7 100644 >> --- >> a/lucene/core/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java >> +++ >> b/lucene/core/src/java/org/apache/lucene/index/ConcurrentMergeScheduler.java >> @@ -677,7 +677,13 @@ public class ConcurrentMergeScheduler extends >> MergeScheduler { >> return thread; >> } >> >> - synchronized void runOnMergeFinished(MergeSource mergeSource) { >> + /** >> + * Called when a merge thread finishes. >> + * >> + * @lucene.experimental >> + */ >> + protected synchronized void runOnMergeFinished( >> + MergeSource mergeSource, OneMerge merge, MergeRateLimiter >> rateLimiter) { >> // the merge call as well as the merge thread handling in the finally >> // block must be sync'd on CMS otherwise stalling decisions might cause >> // us to miss pending merges >> @@ -742,7 +748,7 @@ public class ConcurrentMergeScheduler extends >> MergeScheduler { >> rateToString(rateLimiter.getMBPerSec()))); >> } >> >> - runOnMergeFinished(mergeSource); >> + runOnMergeFinished(mergeSource, merge, rateLimiter); >> >> if (verbose()) { >> message(String.format(Locale.ROOT, "merge thread %s end", >> this.getName())); >> > > > -- > > Heitor G. Peralles > Direct: +55 21 979 661 187 > Email: [email protected] > LinkedIn: linkedin.com/in/heitorperalles --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
