@@ -514,8 +514,16 @@ pub fn new_empty_builder(data_type: &DataType, capacity: usize) -> Box<dyn Array
514
514
DataType :: Struct ( _fields) => todo ! ( ) ,
515
515
DataType :: Union ( _union_fields, _union_mode) => todo ! ( ) ,
516
516
DataType :: Dictionary ( _data_type, _data_type1) => todo ! ( ) ,
517
- DataType :: Decimal128 ( _, _) => Box :: new ( Decimal128Builder :: with_capacity ( capacity) ) as _ ,
518
- DataType :: Decimal256 ( _, _) => Box :: new ( Decimal256Builder :: with_capacity ( capacity) ) as _ ,
517
+ DataType :: Decimal128 ( precision, scale) => Box :: new (
518
+ Decimal128Builder :: with_capacity ( capacity)
519
+ . with_precision_and_scale ( * precision, * scale)
520
+ . expect ( "Invalid precision / scale for Decimal128" ) ,
521
+ ) as _ ,
522
+ DataType :: Decimal256 ( precision, scale) => Box :: new (
523
+ Decimal256Builder :: with_capacity ( capacity)
524
+ . with_precision_and_scale ( * precision, * scale)
525
+ . expect ( "Invalid precision / scale for Decimal256" ) ,
526
+ ) as _ ,
519
527
DataType :: Map ( _field, _) => todo ! ( ) ,
520
528
DataType :: RunEndEncoded ( _field, _field1) => todo ! ( ) ,
521
529
dt => panic ! ( "Unexpected data type {dt:?}" ) ,
0 commit comments