From b07d77c07993988346251706558b74d71768b5de Mon Sep 17 00:00:00 2001 From: morningman Date: Thu, 23 Oct 2025 16:10:51 +0800 Subject: [PATCH] [opt](var) change merge_io_read_slice_size to merge_io_read_slice_size_bytes --- .../trees/plans/commands/info/SetSessionVarOp.java | 10 ++++++++++ .../main/java/org/apache/doris/qe/SessionVariable.java | 9 +++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/info/SetSessionVarOp.java b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/info/SetSessionVarOp.java index 83e094dfd3b434..3356ee3a87826d 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/info/SetSessionVarOp.java +++ b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/info/SetSessionVarOp.java @@ -120,6 +120,16 @@ public void validate(ConnectContext ctx) throws UserException { } } + if (name.equalsIgnoreCase(SessionVariable.MERGE_IO_READ_SLICE_SIZE_BYTES)) { + try { + this.value = new StringLiteral( + Long.toString(ParseUtil.analyzeDataVolume(value.getStringValue()))); + } catch (Throwable t) { + // see comments of FILE_SPLIT_SIZE + this.value = new StringLiteral(value.getStringValue()); + } + } + if (name.equalsIgnoreCase("is_report_success")) { name = SessionVariable.ENABLE_PROFILE; } diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java b/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java index eb32fe14fcae8e..79762f9d154bb6 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java +++ b/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java @@ -868,7 +868,7 @@ public static double getHotValueThreshold() { public static final String MULTI_DISTINCT_STRATEGY = "multi_distinct_strategy"; public static final String AGG_PHASE = "agg_phase"; - public static final String MERGE_IO_READ_SLICE_SIZE = "merge_io_read_slice_size"; + public static final String MERGE_IO_READ_SLICE_SIZE_BYTES = "merge_io_read_slice_size_bytes"; public static final String ENABLE_PREFER_CACHED_ROWSET = "enable_prefer_cached_rowset"; public static final String QUERY_FRESHNESS_TOLERANCE_MS = "query_freshness_tolerance_ms"; @@ -2589,9 +2589,10 @@ public void setSkewRewriteAggBucketNum(int num) { public int aggPhase = 0; - @VariableMgr.VarAttr(name = MERGE_IO_READ_SLICE_SIZE, description = {"调整 READ_SLICE_SIZE 大小,降低 Merge IO 读放大影响", + @VariableMgr.VarAttr(name = MERGE_IO_READ_SLICE_SIZE_BYTES, description = { + "调整 READ_SLICE_SIZE 大小,降低 Merge IO 读放大影响", "Make the READ_SLICE_SIZE variable configurable to reduce the impact caused by read amplification."}) - public int mergeReadSliceSize = 8388608; + public int mergeReadSliceSizeBytes = 8388608; public void setAggPhase(int phase) { aggPhase = phase; @@ -4751,7 +4752,7 @@ public TQueryOptions toThrift() { tResult.setHnswEfSearch(hnswEFSearch); tResult.setHnswCheckRelativeDistance(hnswCheckRelativeDistance); tResult.setHnswBoundedQueue(hnswBoundedQueue); - tResult.setMergeReadSliceSize(mergeReadSliceSize); + tResult.setMergeReadSliceSize(mergeReadSliceSizeBytes); return tResult; }