Skip to content

cli_quick_test failing on windows (stack overflow) after sqlparser 0.47.0 upgrade #10793

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
alamb opened this issue Jun 4, 2024 · 2 comments
Closed
Labels
bug Something isn't working

Comments

@alamb
Copy link
Contributor

alamb commented Jun 4, 2024

Describe the bug

After #10392 the windows CI check fails like this: https://github.com/apache/datafusion/actions/runs/9332719422/job/25688898390?pr=10392

test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s

     Running tests\cli_integration.rs (target\debug\deps\cli_integration-a8d172188bfbd823.exe)

running 4 tests
test cli_quick_test::case_3_exec_from_files ... ok
test cli_quick_test::case_1_exec_from_commands ... ok
test cli_quick_test::case_2_exec_multiple_statements ... ok
test cli_quick_test::case_4_set_batch_size ... FAILED

failures:

---- cli_quick_test::case_4_set_batch_size stdout ----
thread 'cli_quick_test::case_4_set_batch_size' panicked at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6\library\core\src\ops\function.rs:250:5:
Unexpected stdout, failed var == "[{\"name\":\"datafusion.execution.batch_size\",\"value\":\"1\"}]\n"
├── var: ""
└── var as str: 

command=`"D:\\a\\datafusion\\datafusion\\datafusion-cli\\target\\debug\\datafusion-cli.exe" "--command" "show datafusion.execution.batch_size" "--format" "json" "-q" "-b" "1"`
code=-1073741571
stdout=""
stderr=```

thread \'main\' has overflowed its stack

stack backtrace:
0: std::panicking::begin_panic_handler
at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library\std\src\panicking.rs:645
1: core::panicking::panic_fmt
at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library\core\src\panicking.rs:72
2: core::panicking::panic_display<assert_cmd::assert::AssertError>
at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6\library\core\src\panicking.rs:197
3: assert_cmd::assert::impl$35::panic::panic_cold_display<assert_cmd::assert::AssertError>
at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6\library\core\src\panic.rs:99
4: assert_cmd::assert::AssertError::panic<assert_cmd::assert::Assert>
at C:\Users\runneradmin.cargo\registry\src\index.crates.io-6f17d22bba15001f\assert_cmd-2.0.14\src\assert.rs:1033
5: core::ops::function::FnOnce::call_once<assert_cmd::assert::Assert ()(assert_cmd::assert::AssertError),tuple$<assert_cmd::assert::AssertError> >
at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6\library\core\src\ops\function.rs:250
6: core::result::Result::unwrap_or_else<assert_cmd::assert::Assert,assert_cmd::assert::AssertError,assert_cmd::assert::Assert (
)(assert_cmd::assert::AssertError)>
at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6\library\core\src\result.rs:1431
7: assert_cmd::assert::Assert::stdout<predicates::ord::EqPredicate<ref$<str$> >,assert_cmd::assert::StrOutputPredicate<predicates::ord::EqPredicate<ref$<str$> > > >
at C:\Users\runneradmin.cargo\registry\src\index.crates.io-6f17d22bba15001f\assert_cmd-2.0.14\src\assert.rs:364
8: cli_integration::cli_quick_test<array$<ref$<str$>,7> >
at .\tests\cli_integration.rs:55
9: cli_integration::cli_quick_test::case_4_set_batch_size
at .\tests\cli_integration.rs:31
10: cli_integration::cli_quick_test::case_4_set_batch_size::closure$0
at .\tests\cli_integration.rs:31
11: core::ops::function::FnOnce::call_once<cli_integration::cli_quick_test::case_4_set_batch_size::closure_env$0,tuple$<> >
at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6\library\core\src\ops\function.rs:250
12: core::ops::function::FnOnce::call_once
at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library\core\src\ops\function.rs:250
note: Some details are omitted, run with RUST_BACKTRACE=full for a verbose backtrace.


### To Reproduce

_No response_

### Expected behavior

The test should pass

### Additional context

Neither @tisonkun  nor I have a windows machine to debug this on, so I disabled the test in https://github.com/apache/datafusion/pull/10392 and am hoping someone with windows can help us debug the issue
@alamb alamb added the bug Something isn't working label Jun 4, 2024
@Eason0729
Copy link
Contributor

I have a windows machine but was unable to reproduce this issue.

Terminial output
PS C:\project\datafusion\datafusion-cli> cargo test cli_intgration::cli_quick_test
warning: unexpected `cfg` condition value: `force_hash_collisions`
--> C:\Files\project\active-project\datafusion\datafusion\common\src\hash_utils.rs:306:7
    |
306 | #[cfg(feature = "force_hash_collisions")]
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: expected values for `feature` are: `apache-avro`, `avro`, `backtrace`, `object_store`, `parquet`, `pyarrow`, and `pyo3`
    = help: consider adding `force_hash_collisions` as a feature in `Cargo.toml`
    = note: see  for more information about checking conditional configuration
    = note: `#[warn(unexpected_cfgs)]` on by default

...

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 38 filtered out; finished in 0.00s

Running unittests src/main.rs (target\debug\deps\datafusion_cli-483c98fe9c3d1fe6.exe)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 3 filtered out; finished in 0.00s

Running tests\cli_integration.rs (target\debug\deps\cli_integration-9f8847f04ba787bb.exe)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 4 filtered out; finished in 0.00s

@alamb
Copy link
Contributor Author

alamb commented Sep 21, 2024

Thanks @Eason0729 -- let's close it and refile if there is any problems in the future

@alamb alamb closed this as completed Sep 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants