coreutils icon indicating copy to clipboard operation
coreutils copied to clipboard

`IndeterminateOffset` error while running tests in a clean chroot (Arch Linux build)

Open orhun opened this issue 2 years ago • 5 comments
trafficstars

Hello! I'm getting the following errors for the tests while building coreutils 0.0.17 for Arch Linux:

Log
---- test_cp::test_cp_archive stdout ----
current_directory_resolved:
thread 'test_cp::test_cp_archive' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_cp.rs:1189:48

---- test_cp::test_cp_no_preserve_timestamps stdout ----
current_directory_resolved:
thread 'test_cp::test_cp_no_preserve_timestamps' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_cp.rs:1325:48

---- test_cp::test_cp_preserve_timestamps stdout ----
current_directory_resolved:
thread 'test_cp::test_cp_preserve_timestamps' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_cp.rs:1292:48

---- test_mv::test_mv_update_option stdout ----
current_directory_resolved:
touch: /tmp/.tmpFXv3ix/test_mv_update_option_file_a
touch: /tmp/.tmpFXv3ix/test_mv_update_option_file_b
thread 'test_mv::test_mv_update_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_mv.rs:622:48

---- test_pr::test_with_column stdout ----
current_directory_resolved:
thread 'test_pr::test_with_column' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_column_across_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_column_across_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_column_across_option_and_column_separator stdout ----
current_directory_resolved:
thread 'test_pr::test_with_column_across_option_and_column_separator' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_double_space_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_double_space_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_mpr stdout ----
thread 'test_pr::test_with_mpr' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:324:45

---- test_pr::test_with_first_line_number_long_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_first_line_number_long_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_long_header_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_long_header_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_first_line_number_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_first_line_number_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_no_header_trailer_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_no_header_trailer_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_offset_space_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_offset_space_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_number_option_with_custom_separator_char_and_width stdout ----
current_directory_resolved:
thread 'test_pr::test_with_number_option_with_custom_separator_char_and_width' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_page_range stdout ----
current_directory_resolved:
thread 'test_pr::test_with_page_range' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_numbering_option_with_number_width stdout ----
current_directory_resolved:
thread 'test_pr::test_with_numbering_option_with_number_width' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_pr_core_utils_tests stdout ----
current_directory_resolved:
thread 'test_pr::test_with_pr_core_utils_tests' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_join_lines_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_join_lines_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:450:45

---- test_pr::test_with_page_length_option stdout ----
current_directory_resolved:
thread 'test_pr::test_with_page_length_option' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_number_option_with_custom_separator_char stdout ----
current_directory_resolved:
thread 'test_pr::test_with_number_option_with_custom_separator_char' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_pr::test_with_stdin stdout ----
current_directory_resolved:
thread 'test_pr::test_with_stdin' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:261:45

---- test_pr::test_without_any_options stdout ----
current_directory_resolved:
thread 'test_pr::test_without_any_options' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_pr.rs:21:62

---- test_touch::test_touch_mtime_dst_fails stdout ----
current_directory_resolved:
thread 'test_touch::test_touch_mtime_dst_fails' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:657:13

---- test_touch::test_touch_leap_second stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 197001010000.60 test_touch_leap_sec
thread 'test_touch::test_touch_leap_second' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_no_dereference stdout ----
current_directory_resolved:
thread 'test_touch::test_touch_no_dereference' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_mtime_dst_succeeds stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -m -t 202103140300 test_touch_set_mtime_dst_succeeds
thread 'test_touch::test_touch_mtime_dst_succeeds' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_reference stdout ----
current_directory_resolved:
thread 'test_touch::test_touch_reference' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_both_date_and_reference stdout ----
current_directory_resolved:
thread 'test_touch::test_touch_set_both_date_and_reference' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_both_time_and_reference stdout ----
current_directory_resolved:
thread 'test_touch::test_touch_set_both_time_and_reference' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_both stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 201501011234 -a -m test_touch_set_both
thread 'test_touch::test_touch_set_both' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_cymdhm_time stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 201501011234 test_touch_set_cymdhm_time
thread 'test_touch::test_touch_set_cymdhm_time' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_date stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -d Thu Jan 01 12:34:00 2015 test_touch_set_date
thread 'test_touch::test_touch_set_date' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_date2 stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -d 2000-01-23 test_touch_set_date
thread 'test_touch::test_touch_set_date2' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_cymdhms_time stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 201501011234.56 test_touch_set_cymdhms_time
thread 'test_touch::test_touch_set_cymdhms_time' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_mdhms_time stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 01011234.56 test_touch_set_mdhms_time
thread 'test_touch::test_touch_set_mdhms_time' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_mdhm_time stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 01011234 test_touch_set_mdhm_time
thread 'test_touch::test_touch_set_mdhm_time' panicked at 'called `Result::unwrap()` on an `Err` value: IndeterminateOffset', tests/by-util/test_touch.rs:113:47

---- test_touch::test_touch_set_only_atime stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 201501011234 -a test_touch_set_only_atime
thread 'test_touch::test_touch_set_only_atime' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_only_mtime stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 201501011234 -m test_touch_set_only_mtime
thread 'test_touch::test_touch_set_only_mtime' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_ymdhm_time stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 1501011234 test_touch_set_ymdhm_time
thread 'test_touch::test_touch_set_ymdhm_time' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13

---- test_touch::test_touch_set_ymdhms_time stdout ----
current_directory_resolved:
run: /build/uutils-coreutils/src/coreutils-0.0.17/target/release/coreutils touch -t 1501011234.56 test_touch_set_ymdhms_time
thread 'test_touch::test_touch_set_ymdhms_time' panicked at 'Error The system's UTC offset could not be determined retrieving the OffsetDateTime::now_local', tests/by-util/test_touch.rs:55:13


failures:
    test_cp::test_cp_archive
    test_cp::test_cp_no_preserve_timestamps
    test_cp::test_cp_preserve_timestamps
    test_mv::test_mv_update_option
    test_pr::test_with_column
    test_pr::test_with_column_across_option
    test_pr::test_with_column_across_option_and_column_separator
    test_pr::test_with_double_space_option
    test_pr::test_with_first_line_number_long_option
    test_pr::test_with_first_line_number_option
    test_pr::test_with_join_lines_option
    test_pr::test_with_long_header_option
    test_pr::test_with_mpr
    test_pr::test_with_no_header_trailer_option
    test_pr::test_with_number_option_with_custom_separator_char
    test_pr::test_with_number_option_with_custom_separator_char_and_width
    test_pr::test_with_numbering_option_with_number_width
    test_pr::test_with_offset_space_option
    test_pr::test_with_page_length_option
    test_pr::test_with_page_range
    test_pr::test_with_pr_core_utils_tests
    test_pr::test_with_stdin
    test_pr::test_without_any_options
    test_touch::test_touch_leap_second
    test_touch::test_touch_mtime_dst_fails
    test_touch::test_touch_mtime_dst_succeeds
    test_touch::test_touch_no_dereference
    test_touch::test_touch_reference
    test_touch::test_touch_set_both
    test_touch::test_touch_set_both_date_and_reference
    test_touch::test_touch_set_both_time_and_reference
    test_touch::test_touch_set_cymdhm_time
    test_touch::test_touch_set_cymdhms_time
    test_touch::test_touch_set_date
    test_touch::test_touch_set_date2
    test_touch::test_touch_set_mdhm_time
    test_touch::test_touch_set_mdhms_time
    test_touch::test_touch_set_only_atime
    test_touch::test_touch_set_only_mtime
    test_touch::test_touch_set_ymdhm_time
    test_touch::test_touch_set_ymdhms_time

test result: FAILED. 1979 passed; 41 failed; 33 ignored; 0 measured; 3 filtered out; finished in 12.47s

Currently, I'm setting RUSTFLAGS="--cfg unsound_local_offset" as a workaround but it's suboptimal. Is there a suggested way to run the tests while avoiding UTC offset errors?

orhun avatar Jan 21 '23 14:01 orhun

Interesting. It's probably related to this: https://github.com/time-rs/time/issues/538

You might be able to work around this by downgrading the time crate in the meantime.

tertsdiepraam avatar Jan 21 '23 15:01 tertsdiepraam

We've seen things before where the local offset failed in the CI. That might have been caused by the unsoundness maybe. I wonder how we could fix this, because I really don't want to serialize all the tests. I guess we could always run the tests with the unsound_local_offset flag, but that's not great either.

tertsdiepraam avatar Jan 21 '23 15:01 tertsdiepraam

Already the case: https://github.com/uutils/coreutils/blob/ab736926baad88828f30a2ac6804cd2fe430b2bc/.cargo/config#L13-L20

sylvestre avatar Jan 21 '23 18:01 sylvestre

As far as I understand, there isn't a way to fix this other than setting the unsound_local_offset flag for now. Is that correct?

orhun avatar Jan 22 '23 12:01 orhun

AFAIK, for now :)

sylvestre avatar Jan 22 '23 14:01 sylvestre