Skip to content

[Rust] [Parquet] Intermittent test failure thread 'encodings::encoding::tests::test_bool' panicked at 'Invalid byte when reading bool' #26946

Description

@asfimport

The following parquet tests intermittently fail

test encodings::encoding::tests::test_bool ... FAILED

thread 'encodings::encoding::tests::test_bool' panicked at 'Invalid byte when reading bool', parquet/src/util/bit_util.rs:73:18

ARROW-10943 tracks an intermittent error in the parquet tests. We think we fixed one error but there is still something wrong.

I can reproduce this locally at ca685a0 by running the following shell script:

#!/bin/bash
# run a command in a loop

cd /Users/alamb/Software/arrow2/rust
export PARQUET_TEST_DATA=`pwd`/../cpp/submodules/parquet-testing/data
export ARROW_TEST_DATA=`pwd`/../testing/data
export RUST_BACKTRACE=1

i=0
while true; do
    echo "iteration $i"
    cargo test -p parquet  -- test_bool
    i=$((i+1))
done

Here is an example of the full stack trace / errors:

test encodings::encoding::tests::test_bool ... FAILED

failures:

---- encodings::encoding::tests::test_bool stdout ----
thread 'encodings::encoding::tests::test_bool' panicked at 'Invalid byte when reading bool', parquet/src/util/bit_util.rs:73:18
stack backtrace:
   0: std::panicking::begin_panic
             at /Users/alamb/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/library/std/src/panicking.rs:505
   1: <bool as parquet::util::bit_util::FromBytes>::from_ne_bytes
             at ./src/util/bit_util.rs:73
   2: parquet::util::bit_util::from_ne_slice
             at ./src/util/bit_util.rs:32
   3: parquet::encodings::rle::RleDecoder::get_batch
             at ./src/encodings/rle.rs:402
   4: <parquet::encodings::decoding::RleValueDecoder<T> as parquet::encodings::decoding::Decoder<T>>::get
             at ./src/encodings/decoding.rs:322
   5: parquet::encodings::encoding::tests::put_and_get
             at ./src/encodings/encoding.rs:1271
   6: <T as parquet::encodings::encoding::tests::EncodingTester<T>>::test_internal
             at ./src/encodings/encoding.rs:1214
   7: parquet::encodings::encoding::tests::EncodingTester::test
             at ./src/encodings/encoding.rs:1159
   8: parquet::encodings::encoding::tests::test_bool
             at ./src/encodings/encoding.rs:969
   9: parquet::encodings::encoding::tests::test_bool::{{closure}}
             at ./src/encodings/encoding.rs:966
  10: core::ops::function::FnOnce::call_once
             at /Users/alamb/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/src/rust/library/core/src/ops/function.rs:227
  11: core::ops::function::FnOnce::call_once
             at /rustc/7eac88abb2e57e752f3302f02be5f3ce3d7adfb4/library/core/src/ops/function.rs:227
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Reporter: Andrew Lamb / @alamb

Related issues:

Note: This issue was originally created as ARROW-11027. Please see the migration documentation for further details.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions