'slice index starts at 8184 but ends at 0' panic
mateon1 opened this issue · 0 comments
mateon1 commented
While executing the command
echo $TMP/*.html | xargs -n1 echo | shuf | parallel -v -j 12 timeout 25s ./classify.sh {}
parallel sometimes panics.
This is non-deterministic, but not rare, I encountered this panic 4 times today.
The line that panics is: https://github.com/mmstick/parallel/blob/master/src/input_iterator/iterator.rs#L127 - which means the start and end indices this code gets are bogus.
parallel: processing task #3470 of 5210: '/tmp/tmp.yrWq6RE9sE/01-0179.html'
parallel: completed task #3465 of 5210: '/tmp/tmp.yrWq6RE9sE/06-0116.html'
parallel: processing task #3471 of 5210: '/tmp/tmp.yrWq6RE9sE/01-0143.html'
parallel: completed task #3466 of 5210: '/tmp/tmp.yrWq6RE9sE/08-0116.html'
parallel: processing task #3472 of 5210: '/tmp/tmp.yrWq6RE9sE/17-0215.html'
parallel: completed task #3471 of 5210: '/tmp/tmp.yrWq6RE9sE/17-0215.html'
parallel: completed task #3469 of 5210: '/tmp/tmp.yrWq6RE9sE/01-0179.html'
parallel: completed task #3470 of 5210: '/tmp/tmp.yrWq6RE9sE/01-0143.html'
parallel: completed task #3467 of 5210: '/tmp/tmp.yrWq6RE9sE/05-0116.html'
parallel: completed task #3468 of 5210: '/tmp/tmp.yrWq6RE9sE/02-0187.html'
parallel: completed task #3463 of 5210: '/tmp/tmp.yrWq6RE9sE/15-0116.html'
parallel: completed task #3458 of 5210: '/tmp/tmp.yrWq6RE9sE/01-0021.html'
parallel: completed task #3460 of 5210: '/tmp/tmp.yrWq6RE9sE/07-0116.html'
parallel: completed task #3464 of 5210: '/tmp/tmp.yrWq6RE9sE/14-0116.html'
thread '<unnamed>' panicked at 'slice index starts at 8184 but ends at 0', libcore/slice/mod.rs:791:5
stack backtrace:
0: 0x5555555adcf3 - std::sys::unix::backtrace::tracing::imp::unwind_backtrace::h29e5ac0a73e43b37
at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: 0x5555555a85d4 - std::sys_common::backtrace::_print::hb6ee6b541022327a
at libstd/sys_common/backtrace.rs:71
2: 0x5555555acd5d - std::panicking::default_hook::{{closure}}::h8e9c6a32e77ac04c
at libstd/sys_common/backtrace.rs:59
at libstd/panicking.rs:206
3: 0x5555555aca59 - std::panicking::default_hook::he3c4c5ba16c3cf24
at libstd/panicking.rs:222
4: 0x5555555ad1bf - std::panicking::rust_panic_with_hook::hdbcff6b8ddc25d62
at libstd/panicking.rs:400
5: 0x5555555acfe2 - std::panicking::begin_panic_fmt::h3d382061e7c80929
at libstd/panicking.rs:347
6: 0x5555555acf12 - rust_begin_unwind
at libstd/panicking.rs:323
7: 0x5555555f2440 - core::panicking::panic_fmt::h8b546590a7a56fd8
at libcore/panicking.rs:71
8: 0x5555555f2864 - core::slice::slice_index_order_fail::ha1b5b1df83303204
at libcore/slice/mod.rs:791
9: 0x55555558adb2 - <parallel::input_iterator::iterator::InputIterator<IO>>::next_value::hcaac5f652e3f3c94
10: 0x555555579df5 - <parallel::input_iterator::lock::InputsLock<IO>>::try_next::ha880198ad3e6d90c
11: 0x55555556e102 - <parallel::execute::exec_commands::ExecCommands<IO>>::run::h06077d53435c9547
12: 0x55555557dead - std::sys_common::backtrace::__rust_begin_short_backtrace::h21aca1d76f499ac2
13: 0x5555555761b7 - std::panicking::try::do_call::h0eccb819cd02e814
14: 0x5555555bbb1e - __rust_maybe_catch_panic
at libpanic_unwind/lib.rs:102
15: 0x55555559323a - <F as alloc::boxed::FnBox<A>>::call_box::h362177bfb878bea9
16: 0x5555555b3a4b - std::sys::unix::thread::Thread::new::thread_start::h85318e0eb633e0b4
at /checkout/src/liballoc/boxed.rs:798
at libstd/sys_common/thread.rs:24
at libstd/sys/unix/thread.rs:90
17: 0x7ffff77b7493 - start_thread
18: 0x7ffff72e4abe - __clone
19: 0x0 - <unknown>
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: "PoisonError { inner: .. }"', libcore/result.rs:945:5
stack backtrace:
0: 0x5555555adcf3 - std::sys::unix::backtrace::tracing::imp::unwind_backtrace::h29e5ac0a73e43b37
at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
1: 0x5555555a85d4 - std::sys_common::backtrace::_print::hb6ee6b541022327a
at libstd/sys_common/backtrace.rs:71
2: 0x5555555acd5d - std::panicking::default_hook::{{closure}}::h8e9c6a32e77ac04c
at libstd/sys_common/backtrace.rs:59
at libstd/panicking.rs:206
3: 0x5555555aca59 - std::panicking::default_hook::he3c4c5ba16c3cf24
at libstd/panicking.rs:222
4: 0x5555555ad1bf - std::panicking::rust_panic_with_hook::hdbcff6b8ddc25d62
at libstd/panicking.rs:400
5: 0x5555555acfe2 - std::panicking::begin_panic_fmt::h3d382061e7c80929
at libstd/panicking.rs:347
6: 0x5555555acf12 - rust_begin_unwind
at libstd/panicking.rs:323
7: 0x5555555f2440 - core::panicking::panic_fmt::h8b546590a7a56fd8
at libcore/panicking.rs:71
8: 0x55555558dcde - core::result::unwrap_failed::hb40f5f2f9c7868a2
9: 0x55555557a142 - <parallel::input_iterator::lock::InputsLock<IO>>::try_next::ha880198ad3e6d90c
10: 0x55555556e102 - <parallel::execute::exec_commands::ExecCommands<IO>>::run::h06077d53435c9547
11: 0x55555557dead - std::sys_common::backtrace::__rust_begin_short_backtrace::h21aca1d76f499ac2
12: 0x5555555761b7 - std::panicking::try::do_call::h0eccb819cd02e814
13: 0x5555555bbb1e - __rust_maybe_catch_panic
at libpanic_unwind/lib.rs:102
14: 0x55555559323a - <F as alloc::boxed::FnBox<A>>::call_box::h362177bfb878bea9
15: 0x5555555b3a4b - std::sys::unix::thread::Thread::new::thread_start::h85318e0eb633e0b4
at /checkout/src/liballoc/boxed.rs:798
at libstd/sys_common/thread.rs:24
at libstd/sys/unix/thread.rs:90
16: 0x7ffff77b7493 - start_thread
17: 0x7ffff72e4abe - __clone
18: 0x0 - <unknown>
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: "PoisonError { inner: .. }"', libcore/result.rs:945:5
[more PoisonErrors omitted]