nushell icon indicating copy to clipboard operation
nushell copied to clipboard

`count-null` when given certain serieses crashes Nushell

Open webbedspace opened this issue 3 years ago • 2 comments

Describe the bug

See title.

How to reproduce

〉[1 2 null 3 4 null 5 ] | into df | count-null
thread 'main' panicked at 'not implemented', C:\Users\runneradmin\.cargo\registry\src\github.com-1ecc6299db9ec823\polars-core-0.23.2\src\chunked_array\object\mod.rs:111:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

[process exited with code 101 (0x00000065)]

From my build:

thread 'main' panicked at 'not implemented', C:\Users\Leon\.cargo\registry\src\github.com-1ecc6299db9ec823\polars-core-0.23.2\src\chunked_array\object\mod.rs:111:9
stack backtrace:
   0:     0x7ff7b4b7a00f - std::backtrace_rs::backtrace::dbghelp::trace
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\..\..\backtrace\src\backtrace\dbghelp.rs:98
   1:     0x7ff7b4b7a00f - std::backtrace_rs::backtrace::trace_unsynchronized
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\..\..\backtrace\src\backtrace\mod.rs:66    
   2:     0x7ff7b4b7a00f - std::sys_common::backtrace::_print_fmt
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\sys_common\backtrace.rs:66
   3:     0x7ff7b4b7a00f - std::sys_common::backtrace::_print::impl$0::fmt
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\sys_common\backtrace.rs:45
   4:     0x7ff7b4ba212a - core::fmt::write
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\core\src\fmt\mod.rs:1197
   5:     0x7ff7b4b6fdf9 - std::io::Write::write_fmt<std::sys::windows::stdio::Stderr>
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\io\mod.rs:1672
   6:     0x7ff7b4b7cf3b - std::sys_common::backtrace::_print
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\sys_common\backtrace.rs:48
   7:     0x7ff7b4b7cf3b - std::sys_common::backtrace::print
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\sys_common\backtrace.rs:35
   8:     0x7ff7b4b7cf3b - std::panicking::default_hook::closure$1
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:295
   9:     0x7ff7b4b7cbbb - std::panicking::default_hook
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:314
  10:     0x7ff7af6cf173 - alloc::boxed::impl$46::call<tuple$<ref$<core::panic::panic_info::PanicInfo> >,dyn$<core::ops::function::Fn<tuple$<ref$<core::panic::panic_info::PanicInfo> >,assoc$<Output,tuple$<> > >,core::marker::Send,core::marker::Sync>,alloc::alloc::Global>
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\alloc\src\boxed.rs:1965
  11:     0x7ff7af6d1f09 - nu::main::closure$0
                               at C:\Coding\nushell\src\main.rs:141
  12:     0x7ff7b4b7d652 - std::panicking::rust_panic_with_hook
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:702
  13:     0x7ff7b4b7d3b2 - std::panicking::begin_panic_handler::closure$0
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:586
  14:     0x7ff7b4b7ac47 - std::sys_common::backtrace::__rust_end_short_backtrace<std::panicking::begin_panic_handler::closure_env$0,never$>
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\sys_common\backtrace.rs:138
  15:     0x7ff7b4b7d0c9 - std::panicking::begin_panic_handler
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:584
  16:     0x7ff7b4d9ecf5 - core::panicking::panic_fmt
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\core\src\panicking.rs:142
  17:     0x7ff7b4d9eb9c - core::panicking::panic
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\core\src\panicking.rs:48
  18:     0x7ff7afa504c1 - polars_core::chunked_array::object::impl$2::data_type<nu_command::dataframe::values::nu_dataframe::DataFrameValue>
                               at C:\Users\Leon\.cargo\registry\src\github.com-1ecc6299db9ec823\polars-core-0.23.2\src\chunked_array\object\mod.rs:111
  19:     0x7ff7afa4fbe3 - arrow2::array::Array::null_count<polars_core::chunked_array::object::ObjectArray<nu_command::dataframe::values::nu_dataframe::DataFrameValue> >
                               at C:\Users\Leon\.cargo\registry\src\github.com-1ecc6299db9ec823\arrow2-0.13.1\src\array\mod.rs:61
  20:     0x7ff7afde0bb8 - polars_core::chunked_array::impl$0::null_count::closure$0<polars_core::datatypes::ObjectType<nu_command::dataframe::values::nu_dataframe::DataFrameValue> >
                               at C:\Users\Leon\.cargo\registry\src\github.com-1ecc6299db9ec823\polars-core-0.23.2\src\chunked_array\mod.rs:327
  21:     0x7ff7af8914b0 - core::iter::adapters::map::map_fold::closure$0<ref$<alloc::boxed::Box<dyn$<arrow2::array::Array>,alloc::alloc::Global> >,usize,usize,polars_core::chunked_array::impl$0::null_count::closure_env$0<polars_core::datatypes::ObjectType<nu_command::dataframe::va
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\core\src\iter\adapters\map.rs:84
  22:     0x7ff7af6dd052 - core::iter::traits::iterator::Iterator::fold<core::slice::iter::Iter<alloc::boxed::Box<dyn$<arrow2::array::Array>,alloc::alloc::Global> >,usize,core::iter::adapters::map::map_fold::closure_env$0<ref$<alloc::boxed::Box<dyn$<arrow2::array::Array>,alloc::all
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\core\src\iter\traits\iterator.rs:2370
  23:     0x7ff7af7fff92 - core::iter::adapters::map::impl$2::fold<usize,core::slice::iter::Iter<alloc::boxed::Box<dyn$<arrow2::array::Array>,alloc::alloc::Global> >,polars_core::chunked_array::impl$0::null_count::closure_env$0<polars_core::datatypes::ObjectType<nu_command::datafra
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\core\src\iter\adapters\map.rs:124
  24:     0x7ff7afbc5388 - core::iter::traits::accum::impl$48::sum<core::iter::adapters::map::Map<core::slice::iter::Iter<alloc::boxed::Box<dyn$<arrow2::array::Array>,alloc::alloc::Global> >,polars_core::chunked_array::impl$0::null_count::closure_env$0<polars_core::datatypes::Objec
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\core\src\iter\traits\accum.rs:42
  25:     0x7ff7af85d453 - core::iter::traits::iterator::Iterator::sum<core::iter::adapters::map::Map<core::slice::iter::Iter<alloc::boxed::Box<dyn$<arrow2::array::Array>,alloc::alloc::Global> >,polars_core::chunked_array::impl$0::null_count::closure_env$0<polars_core::datatypes::O
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\core\src\iter\traits\iterator.rs:3303
  26:     0x7ff7afde0b8d - polars_core::chunked_array::ChunkedArray<polars_core::datatypes::ObjectType<nu_command::dataframe::values::nu_dataframe::DataFrameValue> >::null_count<polars_core::datatypes::ObjectType<nu_command::dataframe::values::nu_dataframe::DataFrameValue> >
                               at C:\Users\Leon\.cargo\registry\src\github.com-1ecc6299db9ec823\polars-core-0.23.2\src\chunked_array\mod.rs:327
  27:     0x7ff7afe1863e - polars_core::series::implementations::object::impl$2::null_count<nu_command::dataframe::values::nu_dataframe::DataFrameValue>
                               at C:\Users\Leon\.cargo\registry\src\github.com-1ecc6299db9ec823\polars-core-0.23.2\src\series\implementations\object.rs:176
  28:     0x7ff7afd2377c - nu_command::dataframe::series::n_null::command
                               at C:\Coding\nushell\crates\nu-command\src\dataframe\series\n_null.rs:63
  29:     0x7ff7afd2354e - nu_command::dataframe::series::n_null::impl$0::run
                               at C:\Coding\nushell\crates\nu-command\src\dataframe\series\n_null.rs:51
  30:     0x7ff7b44b207e - nu_engine::eval::eval_call
                               at C:\Coding\nushell\crates\nu-engine\src\eval.rs:170
  31:     0x7ff7b44bc93d - nu_engine::eval::eval_expression_with_input
                               at C:\Coding\nushell\crates\nu-engine\src\eval.rs:651
  32:     0x7ff7b44bd8d3 - nu_engine::eval::eval_block
                               at C:\Coding\nushell\crates\nu-engine\src\eval.rs:780
  33:     0x7ff7b38153e8 - nu_cli::util::eval_source
                               at C:\Coding\nushell\crates\nu-cli\src\util.rs:233
  34:     0x7ff7b380bfb7 - nu_cli::repl::evaluate_repl
                               at C:\Coding\nushell\crates\nu-cli\src\repl.rs:438
  35:     0x7ff7af6b6d03 - nu::main
                               at C:\Coding\nushell\src\main.rs:438
  36:     0x7ff7af6d283b - core::ops::function::FnOnce::call_once<enum$<core::result::Result<tuple$<>,miette::eyreish::Report>, 1, 18446744073709551615, Err> (*)(),tuple$<> >
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\core\src\ops\function.rs:248
  37:     0x7ff7af6cd45b - std::sys_common::backtrace::__rust_begin_short_backtrace<enum$<core::result::Result<tuple$<>,miette::eyreish::Report>, 1, 18446744073709551615, Err> (*)(),enum$<core::result::Result<tuple$<>,miette::eyreish::Report>, 1, 18446744073709551615, Err> >
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\std\src\sys_common\backtrace.rs:122
  38:     0x7ff7af6bea21 - std::rt::lang_start::closure$0<enum$<core::result::Result<tuple$<>,miette::eyreish::Report>, 1, 18446744073709551615, Err> >
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\std\src\rt.rs:145
  39:     0x7ff7b4b66e71 - core::ops::function::impls::impl$2::call_once
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\core\src\ops\function.rs:280
  40:     0x7ff7b4b66e71 - std::panicking::try::do_call
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:492
  41:     0x7ff7b4b66e71 - std::panicking::try
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:456
  42:     0x7ff7b4b66e71 - std::panic::catch_unwind
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panic.rs:137
  43:     0x7ff7b4b66e71 - std::rt::lang_start_internal::closure$2
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\rt.rs:128
  44:     0x7ff7b4b66e71 - std::panicking::try::do_call
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:492
  45:     0x7ff7b4b66e71 - std::panicking::try
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:456
  46:     0x7ff7b4b66e71 - std::panic::catch_unwind
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panic.rs:137
  47:     0x7ff7b4b66e71 - std::rt::lang_start_internal
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\rt.rs:128
  48:     0x7ff7af6be9ef - std::rt::lang_start<enum$<core::result::Result<tuple$<>,miette::eyreish::Report>, 1, 18446744073709551615, Err> >
                               at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\std\src\rt.rs:144
  49:     0x7ff7af6bc7a6 - main
  50:     0x7ff7b4d7d87c - invoke_main
                               at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
  51:     0x7ff7b4d7d87c - __scrt_common_main_seh
                               at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
  52:     0x7fffa77c7034 - BaseThreadInitThunk
  53:     0x7fffa79026a1 - RtlUserThreadStart
error: process didn't exit successfully: `target\debug\nu.exe` (exit code: 101)

Expected behavior

No crashy-washy.

Actually, what I want to know is where the heck the "C:\Users\runneradmin" path comes from. This is not a user on my PC. Did someone's home PC path get baked in the .exe??

Screenshots

No response

Configuration

key value
version 0.70.0
branch
commit_hash 9ef65dcd692b502d7476b1787247fae8638c2f0c
build_os windows-x86_64
build_target x86_64-pc-windows-msvc
rust_version rustc 1.64.0 (a55dd71d5 2022-09-19)
rust_channel stable-x86_64-pc-windows-msvc
cargo_version cargo 1.64.0 (387270bc7 2022-09-16)
pkg_version 0.70.0
build_time 2022-10-18 18:55:02 +00:00
build_rust_channel release
features database, dataframe, default, trash, which, zip
installed_plugins

Additional context

No response

webbedspace avatar Oct 24 '22 10:10 webbedspace

I believe runneradmin is the CI user https://stackoverflow.com/questions/71051301/how-do-i-use-the-user-home-directory-in-a-github-actions-workflow-that-runs-on-w

fdncred avatar Oct 24 '22 11:10 fdncred

The function that is called here: https://github.com/nushell/nushell/blob/13f87857cf7bbfd17673827c79524bf3f158c1a0/crates/nu-command/src/dataframe/series/n_null.rs#L63 is not implemented upstream: series_trait.rs#L431

There is no associated test so I guess this is "known"

melMass avatar Oct 25 '22 20:10 melMass