Skip to content

Commit e4d8001

Browse files
authored
fix: Transform::Day maps to Date rather than Int for consistency with reference implementation (#479)
Issue: #478
1 parent 4b275a2 commit e4d8001

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

crates/iceberg/src/spec/partition.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -375,7 +375,7 @@ mod tests {
375375
NestedField::optional(
376376
partition_spec.fields[0].field_id,
377377
&partition_spec.fields[0].name,
378-
Type::Primitive(crate::spec::PrimitiveType::Int)
378+
Type::Primitive(crate::spec::PrimitiveType::Date)
379379
)
380380
);
381381
assert_eq!(

crates/iceberg/src/spec/transform.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ impl Transform {
199199
match p {
200200
PrimitiveType::Timestamp
201201
| PrimitiveType::Timestamptz
202-
| PrimitiveType::Date => Ok(Type::Primitive(PrimitiveType::Int)),
202+
| PrimitiveType::Date => Ok(Type::Primitive(PrimitiveType::Date)),
203203
_ => Err(Error::new(
204204
ErrorKind::DataInvalid,
205205
format!("{input_type} is not a valid input type of {self} transform",),

crates/iceberg/src/transform/temporal.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@ mod test {
328328
],
329329
trans_types: vec![
330330
(Primitive(Binary), None),
331-
(Primitive(Date), Some(Primitive(Int))),
331+
(Primitive(Date), Some(Primitive(Date))),
332332
(
333333
Primitive(Decimal {
334334
precision: 8,
@@ -342,8 +342,8 @@ mod test {
342342
(Primitive(StringType), None),
343343
(Primitive(Uuid), None),
344344
(Primitive(Time), None),
345-
(Primitive(Timestamp), Some(Primitive(Int))),
346-
(Primitive(Timestamptz), Some(Primitive(Int))),
345+
(Primitive(Timestamp), Some(Primitive(Date))),
346+
(Primitive(Timestamptz), Some(Primitive(Date))),
347347
(
348348
Struct(StructType::new(vec![NestedField::optional(
349349
1,
@@ -378,7 +378,7 @@ mod test {
378378
],
379379
trans_types: vec![
380380
(Primitive(Binary), None),
381-
(Primitive(Date), Some(Primitive(Int))),
381+
(Primitive(Date), Some(Primitive(Date))),
382382
(
383383
Primitive(Decimal {
384384
precision: 8,
@@ -392,8 +392,8 @@ mod test {
392392
(Primitive(StringType), None),
393393
(Primitive(Uuid), None),
394394
(Primitive(Time), None),
395-
(Primitive(Timestamp), Some(Primitive(Int))),
396-
(Primitive(Timestamptz), Some(Primitive(Int))),
395+
(Primitive(Timestamp), Some(Primitive(Date))),
396+
(Primitive(Timestamptz), Some(Primitive(Date))),
397397
(
398398
Struct(StructType::new(vec![NestedField::optional(
399399
1,
@@ -428,7 +428,7 @@ mod test {
428428
],
429429
trans_types: vec![
430430
(Primitive(Binary), None),
431-
(Primitive(Date), Some(Primitive(Int))),
431+
(Primitive(Date), Some(Primitive(Date))),
432432
(
433433
Primitive(Decimal {
434434
precision: 8,
@@ -442,8 +442,8 @@ mod test {
442442
(Primitive(StringType), None),
443443
(Primitive(Uuid), None),
444444
(Primitive(Time), None),
445-
(Primitive(Timestamp), Some(Primitive(Int))),
446-
(Primitive(Timestamptz), Some(Primitive(Int))),
445+
(Primitive(Timestamp), Some(Primitive(Date))),
446+
(Primitive(Timestamptz), Some(Primitive(Date))),
447447
(
448448
Struct(StructType::new(vec![NestedField::optional(
449449
1,

0 commit comments

Comments
 (0)