BubbaJoe commented on issue #5635:
URL: 
https://github.com/apache/arrow-datafusion/issues/5635#issuecomment-1474842469

   
   I updated from 15.0 to 20.0 and something really weird happened. when i run 
this:
   `SELECT COUNT(*), T, SUM(COUNT(*)) Over (Order By T) From (SELECT *, 
to_date(\"updatedAt\") as T from 'table') Group BY T`
   I get the below error, this query was working fine on version 15.0
   
   I modified my UDF to process multiple values:
   ```
   pub fn to_date(args: &[ArrayRef]) -> DFResult<ArrayRef> {
       if args.is_empty() || args.len() > 1 {
           return Err(DataFusionError::Internal(format!(
               "to_date was called with {} arguments. It requires only 1.",
               args.len()
           )));
       }
       let arg = &args[0].as_any().downcast_ref::<StringArray>().unwrap();
       let mut builder = Date32Builder::new();
       for date_string in arg.iter() {
           let date_time = match 
DateTime::parse_from_rfc3339(date_string.expect("date_string is null")) {
               Ok(dt) => dt,
               Err(e) => {
                   return Result::Err(DataFusionError::Internal(e.to_string()));
               }
           };
           builder.append_value((date_time.timestamp() / 86400) as i32);
       }
       Ok(Arc::new(builder.finish()))
   }
   ```
   
   Error log:
   ```
   thread 'tokio-runtime-worker' panicked at 'Trying to access an element at 
index 17 from a PrimitiveArray of length 17', 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-array-34.0.0/src/array/primitive_array.rs:337:9
   stack backtrace:
      0: rust_begin_unwind
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:575:5
      1: core::panicking::panic_fmt
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/panicking.rs:64:14
      2: arrow_array::array::primitive_array::PrimitiveArray<T>::value
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-array-34.0.0/src/array/primitive_array.rs:337:9
      3: <&arrow_array::array::primitive_array::PrimitiveArray<T> as 
arrow_array::array::ArrayAccessor>::value
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-array-34.0.0/src/array/primitive_array.rs:711:9
      4: 
<&arrow_array::array::primitive_array::PrimitiveArray<arrow_array::types::Date32Type>
 as arrow_cast::display::DisplayIndexState>::write
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-cast-34.0.0/src/display.rs:505:29
      5: <arrow_cast::display::ArrayFormat<F> as 
arrow_cast::display::DisplayIndex>::write
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-cast-34.0.0/src/display.rs:361:9
      6: <arrow_cast::display::ValueFormatter as core::fmt::Display>::fmt
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-cast-34.0.0/src/display.rs:162:15
      7: <T as alloc::string::ToString>::to_string
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/alloc/src/string.rs:2536:9
      8: arrow_json::writer::set_column_for_json_rows::{{closure}}
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-json-34.0.0/src/writer.rs:309:25
      9: core::iter::traits::iterator::Iterator::for_each::call::{{closure}}
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/iter/traits/iterator.rs:828:29
     10: <core::iter::adapters::enumerate::Enumerate<I> as 
core::iter::traits::iterator::Iterator>::fold::enumerate::{{closure}}
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/iter/adapters/enumerate.rs:106:27
     11: core::iter::traits::iterator::Iterator::fold
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/iter/traits/iterator.rs:2414:21
     12: <core::iter::adapters::enumerate::Enumerate<I> as 
core::iter::traits::iterator::Iterator>::fold
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/iter/adapters/enumerate.rs:112:9
     13: core::iter::traits::iterator::Iterator::for_each
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/iter/traits/iterator.rs:831:9
     14: arrow_json::writer::set_column_for_json_rows
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-json-34.0.0/src/writer.rs:305:13
     15: arrow_json::writer::record_batches_to_json_rows
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-json-34.0.0/src/writer.rs:422:17
     16: dataqueen_back::routes::query::QueryResponse::new::{{closure}}
                at ./src/routes/query.rs:49:19
     17: dataqueen_back::routes::query::execute_query::{{closure}}
                at ./src/routes/query.rs:22:9
     18: <F as axum::handler::Handler<(M,T1,T2),S,B>>::call::{{closure}}
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/axum-0.6.0-rc.4/src/handler/mod.rs:209:52
     19: <core::pin::Pin<P> as core::future::future::Future>::poll
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/future/future.rs:124:9
     20: <futures_util::future::future::map::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/future/map.rs:55:37
     21: <futures_util::future::future::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     22: <axum::handler::future::IntoServiceFuture<F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/axum-0.6.0-rc.4/src/macros.rs:42:17
     23: <F as futures_core::future::TryFuture>::try_poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-core-0.3.25/src/future.rs:82:9
     24: <futures_util::future::try_future::into_future::IntoFuture<Fut> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/try_future/into_future.rs:34:9
     25: <futures_util::future::future::map::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/future/map.rs:55:37
     26: <futures_util::future::future::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     27: <futures_util::future::try_future::MapOk<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     28: <tower::util::map_response::MapResponseFuture<F,N> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/macros.rs:38:17
     29: <core::pin::Pin<P> as core::future::future::Future>::poll
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/future/future.rs:124:9
     30: <tower::util::oneshot::Oneshot<S,Req> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/util/oneshot.rs:97:38
     31: <axum::routing::route::RouteFuture<B,E> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/axum-0.6.0-rc.4/src/routing/route.rs:144:61
     32: <tower_http::cors::ResponseFuture<F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-http-0.3.4/src/cors/mod.rs:662:56
     33: <F as futures_core::future::TryFuture>::try_poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-core-0.3.25/src/future.rs:82:9
     34: <futures_util::future::try_future::into_future::IntoFuture<Fut> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/try_future/into_future.rs:34:9
     35: <futures_util::future::future::map::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/future/map.rs:55:37
     36: <futures_util::future::future::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     37: <futures_util::future::try_future::MapOk<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     38: <tower::util::map_response::MapResponseFuture<F,N> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/macros.rs:38:17
     39: <F as futures_core::future::TryFuture>::try_poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-core-0.3.25/src/future.rs:82:9
     40: <futures_util::future::try_future::into_future::IntoFuture<Fut> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/try_future/into_future.rs:34:9
     41: <futures_util::future::future::map::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/future/map.rs:55:37
     42: <futures_util::future::future::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     43: <futures_util::future::try_future::MapErr<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     44: <tower::util::map_err::MapErrFuture<F,N> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/macros.rs:38:17
     45: <F as futures_core::future::TryFuture>::try_poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-core-0.3.25/src/future.rs:82:9
     46: <futures_util::future::try_future::into_future::IntoFuture<Fut> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/try_future/into_future.rs:34:9
     47: <futures_util::future::future::map::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/future/map.rs:55:37
     48: <futures_util::future::future::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     49: <futures_util::future::try_future::MapOk<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     50: <tower::util::map_response::MapResponseFuture<F,N> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/macros.rs:38:17
     51: <F as futures_core::future::TryFuture>::try_poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-core-0.3.25/src/future.rs:82:9
     52: <futures_util::future::try_future::into_future::IntoFuture<Fut> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/try_future/into_future.rs:34:9
     53: <futures_util::future::future::map::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/future/map.rs:55:37
     54: <futures_util::future::future::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     55: <futures_util::future::try_future::MapOk<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     56: <tower::util::map_response::MapResponseFuture<F,N> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/macros.rs:38:17
     57: <core::pin::Pin<P> as core::future::future::Future>::poll
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/future/future.rs:124:9
     58: <tower::util::oneshot::Oneshot<S,Req> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/util/oneshot.rs:97:38
     59: <axum::routing::route::RouteFuture<B,E> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/axum-0.6.0-rc.4/src/routing/route.rs:144:61
     60: <F as futures_core::future::TryFuture>::try_poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-core-0.3.25/src/future.rs:82:9
     61: <futures_util::future::try_future::into_future::IntoFuture<Fut> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/try_future/into_future.rs:34:9
     62: <futures_util::future::future::map::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/future/future/map.rs:55:37
     63: <futures_util::future::future::Map<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     64: <futures_util::future::try_future::MapOk<Fut,F> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/futures-util-0.3.25/src/lib.rs:91:13
     65: <tower::util::map_response::MapResponseFuture<F,N> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/macros.rs:38:17
     66: <core::pin::Pin<P> as core::future::future::Future>::poll
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/future/future.rs:124:9
     67: <tower::util::oneshot::Oneshot<S,Req> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tower-0.4.13/src/util/oneshot.rs:97:38
     68: <axum::routing::route::RouteFuture<B,E> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/axum-0.6.0-rc.4/src/routing/route.rs:144:61
     69: <hyper::proto::h1::dispatch::Server<S,hyper::body::body::Body> as 
hyper::proto::h1::dispatch::Dispatch>::poll_msg
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/proto/h1/dispatch.rs:491:35
     70: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_write
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/proto/h1/dispatch.rs:297:43
     71: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_loop
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/proto/h1/dispatch.rs:161:21
     72: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_inner
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/proto/h1/dispatch.rs:137:16
     73: hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T>::poll_catch
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/proto/h1/dispatch.rs:120:28
     74: <hyper::proto::h1::dispatch::Dispatcher<D,Bs,I,T> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/proto/h1/dispatch.rs:424:9
     75: <hyper::server::conn::ProtoServer<T,B,S,E> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/server/conn.rs:952:47
     76: <hyper::server::conn::upgrades::UpgradeableConnection<I,S,E> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/server/conn.rs:1012:30
     77: <hyper::server::server::new_svc::NewSvcTask<I,N,S,E,W> as 
core::future::future::Future>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.20/src/server/server.rs:728:36
     78: tokio::runtime::task::core::Core<T,S>::poll::{{closure}}
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/runtime/task/core.rs:223:17
     79: tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/loom/std/unsafe_cell.rs:14:9
     80: tokio::runtime::task::core::Core<T,S>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/runtime/task/core.rs:212:13
     81: tokio::runtime::task::harness::poll_future::{{closure}}
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/runtime/task/harness.rs:476:19
     82: <core::panic::unwind_safe::AssertUnwindSafe<F> as 
core::ops::function::FnOnce<()>>::call_once
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/core/src/panic/unwind_safe.rs:271:9
     83: std::panicking::try::do_call
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:483:40
     84: ___rust_try
     85: std::panicking::try
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panicking.rs:447:19
     86: std::panic::catch_unwind
                at 
/rustc/d5a82bbd26e1ad8b7401f6a718a9c57c96905483/library/std/src/panic.rs:137:14
     87: tokio::runtime::task::harness::poll_future
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/runtime/task/harness.rs:464:18
     88: tokio::runtime::task::harness::Harness<T,S>::poll_inner
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/runtime/task/harness.rs:198:27
     89: tokio::runtime::task::harness::Harness<T,S>::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/runtime/task/harness.rs:152:15
     90: tokio::runtime::task::raw::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/runtime/task/raw.rs:255:5
     91: tokio::runtime::task::raw::RawTask::poll
                at 
/Users/joe/.cargo/registry/src/github.com-1ecc6299db9ec823/tokio-1.26.0/src/runtime/task/raw.rs:200:18
   note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose 
backtrace.
   
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to