From b4ae55339c75ee7dfd3cd309f672d74342120cdc Mon Sep 17 00:00:00 2001 From: Cai-Yao <729673078@qq.com> Date: Mon, 6 Jan 2025 16:18:30 +0000 Subject: [PATCH] fix hash join random null hash_val --- src/sql/engine/join/ob_hash_join_op.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/sql/engine/join/ob_hash_join_op.cpp b/src/sql/engine/join/ob_hash_join_op.cpp index 1f0c1040a..ae7d47416 100644 --- a/src/sql/engine/join/ob_hash_join_op.cpp +++ b/src/sql/engine/join/ob_hash_join_op.cpp @@ -4428,7 +4428,8 @@ int ObHashJoinOp::calc_hash_value( if (skip_null) { skipped = true; } else { - hash_value = null_random_hash_value_++; + hash_value = common::murmurhash64A(&null_random_hash_value_, sizeof(int64_t), HASH_SEED); + null_random_hash_value_++; } } hash_value = hash_value & ObHashJoinStoredJoinRow::HASH_VAL_MASK; @@ -4475,7 +4476,8 @@ int ObHashJoinOp::calc_hash_value_batch(const ObIArray &join_keys, if (need_null_random) { if (skip_null) { } else { - hash_vals[i] = null_random_hash_value_++; + hash_vals[i] = common::murmurhash64A(&null_random_hash_value_, sizeof(int64_t), HASH_SEED); + null_random_hash_value_++; right_selector_[selector_idx++] = i; } } else {