From b1943253efa54e70124c4bcbf48d4f37c1729bad Mon Sep 17 00:00:00 2001 From: Shehab <11789402+shehabgamin@users.noreply.github.com> Date: Thu, 10 Oct 2024 02:32:26 -0700 Subject: [PATCH] [spark tests] --- .../sail-plan/src/extension/function/spark_murmur3_hash.rs | 5 +++++ crates/sail-plan/src/extension/function/spark_xxhash64.rs | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/crates/sail-plan/src/extension/function/spark_murmur3_hash.rs b/crates/sail-plan/src/extension/function/spark_murmur3_hash.rs index 33fbbad4..a4cdeb5f 100644 --- a/crates/sail-plan/src/extension/function/spark_murmur3_hash.rs +++ b/crates/sail-plan/src/extension/function/spark_murmur3_hash.rs @@ -38,6 +38,11 @@ impl ScalarUDFImpl for SparkMurmur3Hash { fn invoke(&self, args: &[ColumnarValue]) -> Result { let length = args.len(); + if length < 1 { + return Err(datafusion::error::DataFusionError::Internal( + "spark_hash requires at least one argument".to_string(), + )); + } let seed = &args[length - 1]; let mut args = args.to_vec(); match seed { diff --git a/crates/sail-plan/src/extension/function/spark_xxhash64.rs b/crates/sail-plan/src/extension/function/spark_xxhash64.rs index 4dd609b6..64d5bb04 100644 --- a/crates/sail-plan/src/extension/function/spark_xxhash64.rs +++ b/crates/sail-plan/src/extension/function/spark_xxhash64.rs @@ -38,6 +38,11 @@ impl ScalarUDFImpl for SparkXxhash64 { fn invoke(&self, args: &[ColumnarValue]) -> Result { let length = args.len(); + if length < 1 { + return Err(datafusion::error::DataFusionError::Internal( + "spark_xxhash64 requires at least one argument".to_string(), + )); + } let seed = &args[length - 1]; let mut args = args.to_vec(); match seed {