Skip to content

Commit b056bcf

Browse files
authored
Fix DDL output for Array and Bag types. (#539)
1 parent 4792d1c commit b056bcf

File tree

1 file changed

+5
-8
lines changed
  • extension/partiql-extension-ddl/src

1 file changed

+5
-8
lines changed

extension/partiql-extension-ddl/src/ddl.rs

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -135,16 +135,13 @@ impl PartiqlBasicDdlEncoder {
135135

136136
fn write_type_bag(&self, type_bag: &BagType) -> ShapeDdlEncodeResult<String> {
137137
Ok(format!(
138-
"type_bag<{}>",
138+
"BAG<{}>",
139139
self.write_shape(type_bag.element_type())?
140140
))
141141
}
142142

143143
fn write_type_array(&self, arr: &ArrayType) -> ShapeDdlEncodeResult<String> {
144-
Ok(format!(
145-
"type_array<{}>",
146-
self.write_shape(arr.element_type())?
147-
))
144+
Ok(format!("ARRAY<{}>", self.write_shape(arr.element_type())?))
148145
}
149146

150147
fn write_struct(&self, strct: &StructType) -> ShapeDdlEncodeResult<String> {
@@ -260,12 +257,12 @@ mod tests {
260257
type_struct![bld, IndexSet::from([fields, StructConstraint::Open(false)])]
261258
];
262259

263-
let expected_compact = r#""employee_id" TINYINT,"full_name" VARCHAR,"salary" DECIMAL(8, 2),"details" STRUCT<"a": UNION<DECIMAL(5, 4),TINYINT>,"b": type_array<VARCHAR>,"c": DOUBLE>,"dependents" type_array<VARCHAR>"#;
260+
let expected_compact = r#""employee_id" TINYINT,"full_name" VARCHAR,"salary" DECIMAL(8, 2),"details" STRUCT<"a": UNION<DECIMAL(5, 4),TINYINT>,"b": ARRAY<VARCHAR>,"c": DOUBLE>,"dependents" ARRAY<VARCHAR>"#;
264261
let expected_pretty = r#""employee_id" TINYINT,
265262
"full_name" VARCHAR,
266263
"salary" DECIMAL(8, 2),
267-
"details" STRUCT<"a": UNION<DECIMAL(5, 4),TINYINT>,"b": type_array<VARCHAR>,"c": DOUBLE>,
268-
"dependents" type_array<VARCHAR>"#;
264+
"details" STRUCT<"a": UNION<DECIMAL(5, 4),TINYINT>,"b": ARRAY<VARCHAR>,"c": DOUBLE>,
265+
"dependents" ARRAY<VARCHAR>"#;
269266

270267
let ddl_compact = PartiqlBasicDdlEncoder::new(DdlFormat::Compact);
271268
assert_eq!(ddl_compact.ddl(&ty).expect("write shape"), expected_compact);

0 commit comments

Comments
 (0)