This is an automated email from the ASF dual-hosted git repository.
zhangmang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/auron.git
The following commit(s) were added to refs/heads/master by this push:
new 1554515c [AURON #1848] fix pb list name missing (#2143)
1554515c is described below
commit 1554515c6e1ad05d8669cbf38e5e6ca28931f4ef
Author: zhangmang <[email protected]>
AuthorDate: Tue Mar 31 20:30:51 2026 +0800
[AURON #1848] fix pb list name missing (#2143)
# Which issue does this PR close?
Closes #1848
# Rationale for this change
* PB list type add field names
# What changes are included in this PR?
* shared_list_array_builder add `FieldRef`
# Are there any user-facing changes?
* No
# How was this patch tested?
* No
---
.../datafusion-ext-plans/src/flink/serde/json_deserializer.rs | 1 +
.../datafusion-ext-plans/src/flink/serde/pb_deserializer.rs | 2 ++
.../src/flink/serde/shared_list_array_builder.rs | 7 ++++---
3 files changed, 7 insertions(+), 3 deletions(-)
diff --git
a/native-engine/datafusion-ext-plans/src/flink/serde/json_deserializer.rs
b/native-engine/datafusion-ext-plans/src/flink/serde/json_deserializer.rs
index 4b5d8c2f..cb9a88ad 100644
--- a/native-engine/datafusion-ext-plans/src/flink/serde/json_deserializer.rs
+++ b/native-engine/datafusion-ext-plans/src/flink/serde/json_deserializer.rs
@@ -281,6 +281,7 @@ fn create_shared_array_builder_by_data_type(data_type:
&DataType) -> Result<Shar
let values_builder =
create_shared_array_builder_by_data_type(field_ref.data_type())?;
Ok(SharedArrayBuilder::new(SharedListArrayBuilder::new(
values_builder,
+ Some(field_ref.clone()),
)))
}
DataType::Map(field_ref, _) => {
diff --git
a/native-engine/datafusion-ext-plans/src/flink/serde/pb_deserializer.rs
b/native-engine/datafusion-ext-plans/src/flink/serde/pb_deserializer.rs
index 06bd852e..05a75c77 100644
--- a/native-engine/datafusion-ext-plans/src/flink/serde/pb_deserializer.rs
+++ b/native-engine/datafusion-ext-plans/src/flink/serde/pb_deserializer.rs
@@ -620,6 +620,7 @@ fn create_output_array_builders(
field_desc,
)
.expect("List create_shared_array_builder_by_data_type
failed"),
+ Some(field_ref.clone()),
)));
}
other => {
@@ -707,6 +708,7 @@ fn create_shared_array_builder_by_data_type(
return Ok(SharedArrayBuilder::new(SharedListArrayBuilder::new(
create_shared_array_builder_by_data_type(field_ref.data_type().clone(),
field_desc)
.expect("List create_shared_array_builder_by_data_type
failed"),
+ Some(field_ref.clone()),
)));
}
other => return df_execution_err!("Unsupported data type for Arrow
conversion: {other:?}"),
diff --git
a/native-engine/datafusion-ext-plans/src/flink/serde/shared_list_array_builder.rs
b/native-engine/datafusion-ext-plans/src/flink/serde/shared_list_array_builder.rs
index ba54c114..7df2f55c 100644
---
a/native-engine/datafusion-ext-plans/src/flink/serde/shared_list_array_builder.rs
+++
b/native-engine/datafusion-ext-plans/src/flink/serde/shared_list_array_builder.rs
@@ -63,10 +63,10 @@ impl ArrayBuilder for SharedListArrayBuilder {
impl SharedListArrayBuilder {
/// Creates a new [`SharedArrayListBuilder`] from a given values array
/// builder
- pub(crate) fn new(values_builder: SharedArrayBuilder) -> Self {
+ pub(crate) fn new(values_builder: SharedArrayBuilder, field:
Option<FieldRef>) -> Self {
let capacity = values_builder.len();
let appender = adaptive_append_children(&values_builder);
- Self::with_capacity(values_builder, capacity, appender)
+ Self::with_capacity(values_builder, capacity, appender, field)
}
/// Creates a new [`SharedArrayListBuilder`] with specified capacity
@@ -74,6 +74,7 @@ impl SharedListArrayBuilder {
values_builder: SharedArrayBuilder,
capacity: usize,
adaptive_append_children: Option<Box<dyn FnMut(usize) + Send + Sync>>,
+ field: Option<FieldRef>,
) -> Self {
let mut offsets_builder = BufferBuilder::<i32>::new(capacity + 1);
offsets_builder.append(0);
@@ -81,7 +82,7 @@ impl SharedListArrayBuilder {
offsets_builder,
null_buffer_builder: NullBufferBuilder::new(capacity),
values_builder,
- field: None,
+ field,
current_offset: 0,
adaptive_append_children,
}