You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jp...@apache.org on 2022/07/19 07:34:10 UTC
[lucene] branch branch_9x updated: Fix error in TieredMergePolicy (#1028)
This is an automated email from the ASF dual-hosted git repository.
jpountz 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 dc1ff99b6c6 Fix error in TieredMergePolicy (#1028)
dc1ff99b6c6 is described below
commit dc1ff99b6c6ef92ccdc185fdb8a998041649a460
Author: hcqs33 <lj...@gmail.com>
AuthorDate: Tue Jul 19 15:21:09 2022 +0800
Fix error in TieredMergePolicy (#1028)
Fix error in comparing between bytes of candidates and bytes of max merge.
It's wrong to use candidateSize rather than currentCandidateBytes comparing with maxMergeBytes.
---
lucene/CHANGES.txt | 2 ++
lucene/core/src/java/org/apache/lucene/index/TieredMergePolicy.java | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt
index a85e38ca32b..508a4ae092d 100644
--- a/lucene/CHANGES.txt
+++ b/lucene/CHANGES.txt
@@ -94,6 +94,8 @@ Bug Fixes
* LUCENE-10623: Error implementation of docValueCount for SortingSortedSetDocValues (Lu Xugang)
+* GITHUB#1028: Fix error in TieredMergePolicy (Lin Jian)
+
Other
---------------------
diff --git a/lucene/core/src/java/org/apache/lucene/index/TieredMergePolicy.java b/lucene/core/src/java/org/apache/lucene/index/TieredMergePolicy.java
index de394365dbe..eff23656dad 100644
--- a/lucene/core/src/java/org/apache/lucene/index/TieredMergePolicy.java
+++ b/lucene/core/src/java/org/apache/lucene/index/TieredMergePolicy.java
@@ -878,7 +878,7 @@ public class TieredMergePolicy extends MergePolicy {
// segments or that create a segment close to the
// maximum allowed segment sized are permitted
if (candidateSize > 1
- && (forceMergeRunning == false || candidateSize > 0.7 * maxMergeBytes)) {
+ && (forceMergeRunning == false || currentCandidateBytes > 0.7 * maxMergeBytes)) {
final OneMerge merge = new OneMerge(candidate);
if (verbose(mergeContext)) {
message("add merge=" + segString(mergeContext, merge.segments), mergeContext);