@@ -39,7 +39,7 @@ use chrono::{
3939use cubeclient:: models:: V1CubeMeta ;
4040use datafusion:: {
4141 arrow:: {
42- array:: { Date32Array , Date64Array , TimestampNanosecondArray } ,
42+ array:: { Date32Array , Date64Array , TimestampNanosecondArray , TimestampSecondArray } ,
4343 datatypes:: { DataType , IntervalDayTimeType } ,
4444 } ,
4545 logical_plan:: { Column , Expr , Operator } ,
@@ -2804,6 +2804,7 @@ impl FilterRules {
28042804 vec ! [ Decimal :: new( * value) . to_string( * scale) ]
28052805 }
28062806 ScalarValue :: TimestampNanosecond ( _, _)
2807+ | ScalarValue :: TimestampSecond ( _, _)
28072808 | ScalarValue :: Date32 ( _)
28082809 | ScalarValue :: Date64 ( _) => {
28092810 if let Some ( timestamp) =
@@ -3561,6 +3562,7 @@ impl FilterRules {
35613562 Decimal :: new ( * value) . to_string ( * scale)
35623563 }
35633564 ScalarValue :: TimestampNanosecond ( _, _)
3565+ | ScalarValue :: TimestampSecond ( _, _)
35643566 | ScalarValue :: Date32 ( _)
35653567 | ScalarValue :: Date64 ( _) => {
35663568 if let Some ( timestamp) = Self :: scalar_to_native_datetime ( literal) {
@@ -3576,13 +3578,16 @@ impl FilterRules {
35763578 fn scalar_to_native_datetime ( literal : & ScalarValue ) -> Option < NaiveDateTime > {
35773579 match literal {
35783580 ScalarValue :: TimestampNanosecond ( _, _)
3581+ | ScalarValue :: TimestampSecond ( _, _)
35793582 | ScalarValue :: Date32 ( _)
35803583 | ScalarValue :: Date64 ( _) => {
35813584 let array = literal. to_array ( ) ;
35823585 let timestamp = if let Some ( array) =
35833586 array. as_any ( ) . downcast_ref :: < TimestampNanosecondArray > ( )
35843587 {
35853588 array. value_as_datetime ( 0 )
3589+ } else if let Some ( array) = array. as_any ( ) . downcast_ref :: < TimestampSecondArray > ( ) {
3590+ array. value_as_datetime ( 0 )
35863591 } else if let Some ( array) = array. as_any ( ) . downcast_ref :: < Date32Array > ( ) {
35873592 array. value_as_datetime ( 0 )
35883593 } else if let Some ( array) = array. as_any ( ) . downcast_ref :: < Date64Array > ( ) {
0 commit comments