From 14a2791a1db5b3051ae703cd7e43eb2e4f66f187 Mon Sep 17 00:00:00 2001 From: Prudhvi Godithi Date: Wed, 26 Mar 2025 11:00:57 -0700 Subject: [PATCH 1/5] Update the segment floor size Signed-off-by: Prudhvi Godithi --- .../org/opensearch/index/LogByteSizeMergePolicyProvider.java | 2 +- .../java/org/opensearch/index/TieredMergePolicyProvider.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java b/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java index 0b762d781957c..ea88d07dbbb03 100644 --- a/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java +++ b/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java @@ -50,7 +50,7 @@ public class LogByteSizeMergePolicyProvider implements MergePolicyProvider { private final Logger logger; private final boolean mergesEnabled; - public static final ByteSizeValue DEFAULT_MIN_MERGE = new ByteSizeValue(2, ByteSizeUnit.MB); + public static final ByteSizeValue DEFAULT_MIN_MERGE = new ByteSizeValue(16, ByteSizeUnit.MB); public static final int DEFAULT_MERGE_FACTOR = 10; public static final ByteSizeValue DEFAULT_MAX_MERGED_SEGMENT = new ByteSizeValue(5, ByteSizeUnit.GB); diff --git a/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java b/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java index d5d354c6c960a..ed26dd1512d86 100644 --- a/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java +++ b/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java @@ -136,7 +136,7 @@ public final class TieredMergePolicyProvider implements MergePolicyProvider { private final boolean mergesEnabled; public static final double DEFAULT_EXPUNGE_DELETES_ALLOWED = 10d; - public static final ByteSizeValue DEFAULT_FLOOR_SEGMENT = new ByteSizeValue(2, ByteSizeUnit.MB); + public static final ByteSizeValue DEFAULT_FLOOR_SEGMENT = new ByteSizeValue(16, ByteSizeUnit.MB); public static final int DEFAULT_MAX_MERGE_AT_ONCE = 10; public static final ByteSizeValue DEFAULT_MAX_MERGED_SEGMENT = new ByteSizeValue(5, ByteSizeUnit.GB); public static final double DEFAULT_SEGMENTS_PER_TIER = 10.0d; From e1090208c47df2a87b5301d50cedc242b37e390b Mon Sep 17 00:00:00 2001 From: Prudhvi Godithi Date: Wed, 26 Mar 2025 11:14:20 -0700 Subject: [PATCH 2/5] Add few comments Signed-off-by: Prudhvi Godithi --- .../opensearch/index/LogByteSizeMergePolicyProvider.java | 5 +++++ .../org/opensearch/index/TieredMergePolicyProvider.java | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java b/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java index ea88d07dbbb03..4087b0c4644f9 100644 --- a/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java +++ b/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java @@ -50,6 +50,11 @@ public class LogByteSizeMergePolicyProvider implements MergePolicyProvider { private final Logger logger; private final boolean mergesEnabled; + + /** + * Using 16MB floor segment size rather than the original defaults in Lucene branch_10x. + * The 16MB floor change was planned to be included in Lucene 10.2 but we're adopting it early to gain the performance benefits of larger floor segments. + */ public static final ByteSizeValue DEFAULT_MIN_MERGE = new ByteSizeValue(16, ByteSizeUnit.MB); public static final int DEFAULT_MERGE_FACTOR = 10; diff --git a/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java b/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java index ed26dd1512d86..c6d1f62e21cdb 100644 --- a/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java +++ b/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java @@ -136,7 +136,13 @@ public final class TieredMergePolicyProvider implements MergePolicyProvider { private final boolean mergesEnabled; public static final double DEFAULT_EXPUNGE_DELETES_ALLOWED = 10d; + + /** + * Using 16MB floor segment size rather than the original defaults in Lucene branch_10x. + * The 16MB floor change was planned to be included in Lucene 10.2 but we're adopting it early to gain the performance benefits of larger floor segments. + */ public static final ByteSizeValue DEFAULT_FLOOR_SEGMENT = new ByteSizeValue(16, ByteSizeUnit.MB); + public static final int DEFAULT_MAX_MERGE_AT_ONCE = 10; public static final ByteSizeValue DEFAULT_MAX_MERGED_SEGMENT = new ByteSizeValue(5, ByteSizeUnit.GB); public static final double DEFAULT_SEGMENTS_PER_TIER = 10.0d; From 1ca2f8a562c62dc3b14aa11ca8bf66de20d05a4c Mon Sep 17 00:00:00 2001 From: Prudhvi Godithi Date: Wed, 26 Mar 2025 11:23:49 -0700 Subject: [PATCH 3/5] Add few comments Signed-off-by: Prudhvi Godithi --- .../org/opensearch/index/LogByteSizeMergePolicyProvider.java | 1 - 1 file changed, 1 deletion(-) diff --git a/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java b/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java index 4087b0c4644f9..8bf3db49b9bc1 100644 --- a/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java +++ b/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java @@ -50,7 +50,6 @@ public class LogByteSizeMergePolicyProvider implements MergePolicyProvider { private final Logger logger; private final boolean mergesEnabled; - /** * Using 16MB floor segment size rather than the original defaults in Lucene branch_10x. * The 16MB floor change was planned to be included in Lucene 10.2 but we're adopting it early to gain the performance benefits of larger floor segments. From 4c573585c047c916026969907e48f8d061e806af Mon Sep 17 00:00:00 2001 From: Prudhvi Godithi Date: Thu, 27 Mar 2025 14:16:19 -0700 Subject: [PATCH 4/5] Update comment Signed-off-by: Prudhvi Godithi --- .../org/opensearch/index/LogByteSizeMergePolicyProvider.java | 4 ++-- .../java/org/opensearch/index/TieredMergePolicyProvider.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java b/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java index 8bf3db49b9bc1..1b44f910ba51b 100644 --- a/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java +++ b/server/src/main/java/org/opensearch/index/LogByteSizeMergePolicyProvider.java @@ -51,8 +51,8 @@ public class LogByteSizeMergePolicyProvider implements MergePolicyProvider { private final boolean mergesEnabled; /** - * Using 16MB floor segment size rather than the original defaults in Lucene branch_10x. - * The 16MB floor change was planned to be included in Lucene 10.2 but we're adopting it early to gain the performance benefits of larger floor segments. + * Use 16MB floor size to match Lucene default. + * See ... */ public static final ByteSizeValue DEFAULT_MIN_MERGE = new ByteSizeValue(16, ByteSizeUnit.MB); public static final int DEFAULT_MERGE_FACTOR = 10; diff --git a/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java b/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java index c6d1f62e21cdb..2eeb25dee88c3 100644 --- a/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java +++ b/server/src/main/java/org/opensearch/index/TieredMergePolicyProvider.java @@ -138,8 +138,8 @@ public final class TieredMergePolicyProvider implements MergePolicyProvider { public static final double DEFAULT_EXPUNGE_DELETES_ALLOWED = 10d; /** - * Using 16MB floor segment size rather than the original defaults in Lucene branch_10x. - * The 16MB floor change was planned to be included in Lucene 10.2 but we're adopting it early to gain the performance benefits of larger floor segments. + * Use 16MB floor size to match Lucene default. + * See ... */ public static final ByteSizeValue DEFAULT_FLOOR_SEGMENT = new ByteSizeValue(16, ByteSizeUnit.MB); From ed01775f44ad34e30b79311329e9ab9e08a2321e Mon Sep 17 00:00:00 2001 From: Prudhvi Godithi Date: Thu, 27 Mar 2025 19:12:19 -0700 Subject: [PATCH 5/5] Updated CHANGELOG.md Signed-off-by: Prudhvi Godithi --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 27c39896ab8c5..9486b93fb7cd9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,13 +9,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - [Rule Based Auto-tagging] Add rule schema for auto tagging ([#17238](https://github.com/opensearch-project/OpenSearch/pull/17238)) - Renaming the node role search to warm ([#17573](https://github.com/opensearch-project/OpenSearch/pull/17573)) - Introduce a new search node role to hold search only shards ([#17620](https://github.com/opensearch-project/OpenSearch/pull/17620)) -- Fix systemd integTest on deb regarding path ownership check ([#17641](https://github.com/opensearch-project/OpenSearch/pull/17641)) +- Fix systemd integTest on deb regarding path ownership check ([#17641](https://github.com/opensearch-project/OpenSearch/pull/17641)) - Add dfs transformation function in XContentMapValues ([#17612](https://github.com/opensearch-project/OpenSearch/pull/17612)) - [Security Manager Replacement] Add support of Java policies ([#17663](https://github.com/opensearch-project/OpenSearch/pull/17663)) - Added Kinesis support as a plugin for the pull-based ingestion ([#17615](https://github.com/opensearch-project/OpenSearch/pull/17615) ### Changed - Migrate BC libs to their FIPS counterparts ([#14912](https://github.com/opensearch-project/OpenSearch/pull/14912)) +- Increase the floor segment size to 16MB ([#17699](https://github.com/opensearch-project/OpenSearch/pull/17699)) ### Dependencies - Bump `com.nimbusds:nimbus-jose-jwt` from 9.41.1 to 10.0.2 ([#17607](https://github.com/opensearch-project/OpenSearch/pull/17607), [#17669](https://github.com/opensearch-project/OpenSearch/pull/17669))