alamb commented on pull request #8598:
URL: https://github.com/apache/arrow/pull/8598#issuecomment-726749085


   Some additional data: I ran the tests under valgrind (as described in 
https://github.com/apache/arrow/pull/8645#issuecomment-726736494) on this 
branch after rebasing against master.
   
   This branch appears to have the same errors as reported on master (It did 
not introduce anything new, but neither does it fix the issue that 
https://github.com/apache/arrow/pull/8645 appears to do):
   
   I did:
   ```
   git checkout  ARROW-10500-refactor-bitslice-iterator
   git rebase apache/master
   PARQUET_TEST_DATA=`pwd`/../../cpp/submodules/parquet-testing/data 
ARROW_TEST_DATA=`pwd`/../../testing/data ~/Software/valgrind/bin/valgrind 
/home/andrew/Software/arrow/rust/target/debug/deps/arrow-175722a3038eb7da  
--test-threads=1
   ```
   
   Which then reported:
   
   ```
   test 
compute::kernels::cast::tests::test_cast_dict_to_dict_bad_index_value_utf8 ... 
==11668== Invalid read of size 1
   ==11668==    at 0x2D63A2: arrow::util::bit_util::set_bits_raw 
(bit_util.rs:128)
   ==11668==    by 0x6C1C49: <arrow::array::builder::BufferBuilder<T> as 
arrow::array::builder::BufferBuilderTrait<T>>::append_n (builder.rs:339)
   ==11668==    by 0x6E9054: 
arrow::array::builder::PrimitiveBuilder<T>::append_slice (builder.rs:591)
   ==11668==    by 0x8CA316: arrow::array::builder::StringBuilder::append_value 
(builder.rs:1781)
   ==11668==    by 0x75DEFB: 
arrow::array::builder::StringDictionaryBuilder<K>::append (builder.rs:2435)
   ==11668==    by 0x38CFB3: 
arrow::compute::kernels::cast::tests::test_cast_dict_to_dict_bad_index_value_utf8
 (cast.rs:2612)
   ==11668==    by 0x347D69: 
arrow::compute::kernels::cast::tests::test_cast_dict_to_dict_bad_index_value_utf8::{{closure}}
 (cast.rs:2598)
   ==11668==    by 0xAD460D: core::ops::function::FnOnce::call_once 
(function.rs:232)
   ==11668==    by 0xB9EEB5: call_once<(),FnOnce<()>> (boxed.rs:1008)
   ==11668==    by 0xB9EEB5: call_once<(),alloc::boxed::Box<FnOnce<()>>> 
(panic.rs:318)
   ==11668==    by 0xB9EEB5: 
do_call<std::panic::AssertUnwindSafe<alloc::boxed::Box<FnOnce<()>>>,()> 
(panicking.rs:331)
   ==11668==    by 0xB9EEB5: 
try<(),std::panic::AssertUnwindSafe<alloc::boxed::Box<FnOnce<()>>>> 
(panicking.rs:274)
   ==11668==    by 0xB9EEB5: 
catch_unwind<std::panic::AssertUnwindSafe<alloc::boxed::Box<FnOnce<()>>>,()> 
(panic.rs:394)
   ==11668==    by 0xB9EEB5: run_test_in_process (lib.rs:541)
   ==11668==    by 0xB9EEB5: test::run_test::run_test_inner::{{closure}} 
(lib.rs:450)
   ==11668==    by 0xB9E548: test::run_test::run_test_inner (lib.rs:475)
   ==11668==    by 0xB9C739: test::run_test (lib.rs:505)
   ==11668==    by 0xB8A528: run_tests<closure-2> (lib.rs:284)
   ==11668==    by 0xB8A528: test::console::run_tests_console (console.rs:280)
   ==11668==  Address 0x65c1900 is 0 bytes after a block of size 128 alloc'd
   ==11668==    at 0x4C34443: memalign (vg_replace_malloc.c:906)
   ==11668==    by 0x4C34546: posix_memalign (vg_replace_malloc.c:1070)
   ==11668==    by 0xEBC083: aligned_malloc (alloc.rs:95)
   ==11668==    by 0xEBC083: alloc (alloc.rs:22)
   ==11668==    by 0xEBC083: realloc_fallback (alloc.rs:39)
   ==11668==    by 0xEBC083: realloc (alloc.rs:50)
   ==11668==    by 0xEBC083: __rdl_realloc (alloc.rs:320)
   ==11668==    by 0x33E2FC: alloc::alloc::realloc (alloc.rs:124)
   ==11668==    by 0x3FB608: arrow::memory::reallocate (memory.rs:187)
   ==11668==    by 0x2BEFE6: arrow::buffer::MutableBuffer::reserve 
(buffer.rs:686)
   ==11668==    by 0x6BBD95: <arrow::array::builder::BufferBuilder<T> as 
arrow::array::builder::BufferBuilderTrait<T>>::reserve (builder.rs:307)
   ==11668==    by 0x6C1AEF: <arrow::array::builder::BufferBuilder<T> as 
arrow::array::builder::BufferBuilderTrait<T>>::append_n (builder.rs:335)
   ==11668==    by 0x6E9054: 
arrow::array::builder::PrimitiveBuilder<T>::append_slice (builder.rs:591)
   ==11668==    by 0x8CA316: arrow::array::builder::StringBuilder::append_value 
(builder.rs:1781)
   ==11668==    by 0x75DEFB: 
arrow::array::builder::StringDictionaryBuilder<K>::append (builder.rs:2435)
   ==11668==    by 0x38CFB3: 
arrow::compute::kernels::cast::tests::test_cast_dict_to_dict_bad_index_value_utf8
 (cast.rs:2612)
   ==11668== 
   ==11668== Invalid write of size 1
   ==11668==    at 0x2D63A4: arrow::util::bit_util::set_bits_raw 
(bit_util.rs:128)
   ==11668==    by 0x6C1C49: <arrow::array::builder::BufferBuilder<T> as 
arrow::array::builder::BufferBuilderTrait<T>>::append_n (builder.rs:339)
   ==11668==    by 0x6E9054: 
arrow::array::builder::PrimitiveBuilder<T>::append_slice (builder.rs:591)
   ==11668==    by 0x8CA316: arrow::array::builder::StringBuilder::append_value 
(builder.rs:1781)
   ==11668==    by 0x75DEFB: 
arrow::array::builder::StringDictionaryBuilder<K>::append (builder.rs:2435)
   ==11668==    by 0x38CFB3: 
arrow::compute::kernels::cast::tests::test_cast_dict_to_dict_bad_index_value_utf8
 (cast.rs:2612)
   ==11668==    by 0x347D69: 
arrow::compute::kernels::cast::tests::test_cast_dict_to_dict_bad_index_value_utf8::{{closure}}
 (cast.rs:2598)
   ==11668==    by 0xAD460D: core::ops::function::FnOnce::call_once 
(function.rs:232)
   ==11668==    by 0xB9EEB5: call_once<(),FnOnce<()>> (boxed.rs:1008)
   ==11668==    by 0xB9EEB5: call_once<(),alloc::boxed::Box<FnOnce<()>>> 
(panic.rs:318)
   ==11668==    by 0xB9EEB5: 
do_call<std::panic::AssertUnwindSafe<alloc::boxed::Box<FnOnce<()>>>,()> 
(panicking.rs:331)
   ==11668==    by 0xB9EEB5: 
try<(),std::panic::AssertUnwindSafe<alloc::boxed::Box<FnOnce<()>>>> 
(panicking.rs:274)
   ==11668==    by 0xB9EEB5: 
catch_unwind<std::panic::AssertUnwindSafe<alloc::boxed::Box<FnOnce<()>>>,()> 
(panic.rs:394)
   ==11668==    by 0xB9EEB5: run_test_in_process (lib.rs:541)
   ==11668==    by 0xB9EEB5: test::run_test::run_test_inner::{{closure}} 
(lib.rs:450)
   ==11668==    by 0xB9E548: test::run_test::run_test_inner (lib.rs:475)
   ==11668==    by 0xB9C739: test::run_test (lib.rs:505)
   ==11668==    by 0xB8A528: run_tests<closure-2> (lib.rs:284)
   ==11668==    by 0xB8A528: test::console::run_tests_console (console.rs:280)
   ==11668==  Address 0x65c1900 is 0 bytes after a block of size 128 alloc'd
   ==11668==    at 0x4C34443: memalign (vg_replace_malloc.c:906)
   ==11668==    by 0x4C34546: posix_memalign (vg_replace_malloc.c:1070)
   ==11668==    by 0xEBC083: aligned_malloc (alloc.rs:95)
   ==11668==    by 0xEBC083: alloc (alloc.rs:22)
   ==11668==    by 0xEBC083: realloc_fallback (alloc.rs:39)
   ==11668==    by 0xEBC083: realloc (alloc.rs:50)
   ==11668==    by 0xEBC083: __rdl_realloc (alloc.rs:320)
   ==11668==    by 0x33E2FC: alloc::alloc::realloc (alloc.rs:124)
   ==11668==    by 0x3FB608: arrow::memory::reallocate (memory.rs:187)
   ==11668==    by 0x2BEFE6: arrow::buffer::MutableBuffer::reserve 
(buffer.rs:686)
   ==11668==    by 0x6BBD95: <arrow::array::builder::BufferBuilder<T> as 
arrow::array::builder::BufferBuilderTrait<T>>::reserve (builder.rs:307)
   ==11668==    by 0x6C1AEF: <arrow::array::builder::BufferBuilder<T> as 
arrow::array::builder::BufferBuilderTrait<T>>::append_n (builder.rs:335)
   ==11668==    by 0x6E9054: 
arrow::array::builder::PrimitiveBuilder<T>::append_slice (builder.rs:591)
   ==11668==    by 0x8CA316: arrow::array::builder::StringBuilder::append_value 
(builder.rs:1781)
   ==11668==    by 0x75DEFB: 
arrow::array::builder::StringDictionaryBuilder<K>::append (builder.rs:2435)
   ==11668==    by 0x38CFB3: 
arrow::compute::kernels::cast::tests::test_cast_dict_to_dict_bad_index_value_utf8
 (cast.rs:2612)
   ==11668== 
   ..
   
   ==11668== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
   ```
   


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to