Skip to content

Commit 472a729

Browse files
authored
Revert Workround for Empty FixedSizeBinary Values Buffer After arrow-rs Upgrade (#19801)
## Which issue does this PR close? - Closes #19085 ## Rationale for this change Use idiomatic way of creating a fixed size binary null array. ## What changes are included in this PR? Basically reverting the workaround from #18903 as the issue has been fixed in arrow-rs. ## Are these changes tested? Yes, test introduced in #18903 . ## Are there any user-facing changes? No
1 parent 429f5a7 commit 472a729

File tree

1 file changed

+10
-18
lines changed
  • datafusion/common/src/scalar

1 file changed

+10
-18
lines changed

datafusion/common/src/scalar/mod.rs

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -61,16 +61,15 @@ use arrow::array::{
6161
Date64Array, Decimal32Array, Decimal64Array, Decimal128Array, Decimal256Array,
6262
DictionaryArray, DurationMicrosecondArray, DurationMillisecondArray,
6363
DurationNanosecondArray, DurationSecondArray, FixedSizeBinaryArray,
64-
FixedSizeBinaryBuilder, FixedSizeListArray, Float16Array, Float32Array, Float64Array,
65-
GenericListArray, Int8Array, Int16Array, Int32Array, Int64Array,
66-
IntervalDayTimeArray, IntervalMonthDayNanoArray, IntervalYearMonthArray,
67-
LargeBinaryArray, LargeListArray, LargeStringArray, ListArray, MapArray,
68-
MutableArrayData, OffsetSizeTrait, PrimitiveArray, Scalar, StringArray,
69-
StringViewArray, StringViewBuilder, StructArray, Time32MillisecondArray,
70-
Time32SecondArray, Time64MicrosecondArray, Time64NanosecondArray,
71-
TimestampMicrosecondArray, TimestampMillisecondArray, TimestampNanosecondArray,
72-
TimestampSecondArray, UInt8Array, UInt16Array, UInt32Array, UInt64Array, UnionArray,
73-
new_empty_array, new_null_array,
64+
FixedSizeListArray, Float16Array, Float32Array, Float64Array, GenericListArray,
65+
Int8Array, Int16Array, Int32Array, Int64Array, IntervalDayTimeArray,
66+
IntervalMonthDayNanoArray, IntervalYearMonthArray, LargeBinaryArray, LargeListArray,
67+
LargeStringArray, ListArray, MapArray, MutableArrayData, OffsetSizeTrait,
68+
PrimitiveArray, Scalar, StringArray, StringViewArray, StringViewBuilder, StructArray,
69+
Time32MillisecondArray, Time32SecondArray, Time64MicrosecondArray,
70+
Time64NanosecondArray, TimestampMicrosecondArray, TimestampMillisecondArray,
71+
TimestampNanosecondArray, TimestampSecondArray, UInt8Array, UInt16Array, UInt32Array,
72+
UInt64Array, UnionArray, new_empty_array, new_null_array,
7473
};
7574
use arrow::buffer::{BooleanBuffer, ScalarBuffer};
7675
use arrow::compute::kernels::cast::{CastOptions, cast_with_options};
@@ -3031,14 +3030,7 @@ impl ScalarValue {
30313030
)
30323031
.unwrap(),
30333032
),
3034-
None => {
3035-
// TODO: Replace with FixedSizeBinaryArray::new_null once a fix for
3036-
// https://github.com/apache/arrow-rs/issues/8900 is in the used arrow-rs
3037-
// version.
3038-
let mut builder = FixedSizeBinaryBuilder::new(*s);
3039-
builder.append_nulls(size);
3040-
Arc::new(builder.finish())
3041-
}
3033+
None => Arc::new(FixedSizeBinaryArray::new_null(*s, size)),
30423034
},
30433035
ScalarValue::LargeBinary(e) => match e {
30443036
Some(value) => {

0 commit comments

Comments
 (0)