I am going to upload a workaround for systemd's tests for resolute, but
not for stonking since we should get rust-coreutils 0.9.0 soon-ish.
** Changed in: systemd (Ubuntu Stonking)
Status: New => Won't Fix
** Changed in: systemd (Ubuntu Resolute)
Status: New => In Progress
** Description changed:
+ [Impact]
+
Example good log: https://autopkgtest.ubuntu.com/results/autopkgtest-
resolute/resolute/amd64/s/systemd/20260420_173427_28792@/log.gz
Example bad log: https://autopkgtest.ubuntu.com/results/autopkgtest-
resolute/resolute/amd64/s/systemd/20260419_131918_67466@/log.gz
The failure case looks like:
5748s 33/98 integration-tests - systemd:TEST-45-TIMEDATE
FAIL 9.54s exit status 1
5748s >>>
UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1
MESON_TEST_ITERATION=1
ASAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1
MALLOC_PERTURB_=47
MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1
/tmp/autopkgtest.t18Zlm/build.xHJ/src/test/integration-tests/integration-test-wrapper.py
--meson-source-dir /tmp/autopkgtest.t18Zlm/build.xHJ/src --meson-build-dir
/var/tmp/integration-tests.tsE4HPIg2E/btrfs/build --name TEST-45-TIMEDATE
--storage volatile --firmware linux-noinitrd --exit-code 123
--coredump-exclude-regex '' --sanitizer-exclude-regex '' --unit
TEST-45-TIMEDATE.service --mkosi /usr/bin/mkosi --
5748s ――――――――――――――――――――――――――――――――――――― ✀
―――――――――――――――――――――――――――――――――――――
5748s Listing only the last 100 lines from a long log.
5748s TEST-45-TIMEDATE.sh[111]: + echo 'unknown value in 3rd line of adjtime
file'
5748s TEST-45-TIMEDATE.sh[111]: unknown value in 3rd line of adjtime file
5748s TEST-45-TIMEDATE.sh[111]: + printf '0.0 0 0\n0\nFOO\n'
5748s TEST-45-TIMEDATE.sh[111]: + timedatectl set-local-rtc 0
5748s TEST-45-TIMEDATE.sh[111]: + check_adjtime_not_exist
5748s TEST-45-TIMEDATE.sh[111]: + [[ -e /etc/adjtime ]]
5748s TEST-45-TIMEDATE.sh[111]: + printf '0.0 0 0\n0\nFOO\n'
5748s TEST-45-TIMEDATE.sh[111]: + timedatectl set-local-rtc 1
5748s TEST-45-TIMEDATE.sh[158]: Warning: The system is now being configured
to read the RTC time in the local time zone
5748s TEST-45-TIMEDATE.sh[158]: This mode cannot be fully supported.
It will create various problems
5748s TEST-45-TIMEDATE.sh[158]: with time zone changes and daylight
saving time adjustments. The RTC
5748s TEST-45-TIMEDATE.sh[158]: time is never updated, it relies on
external facilities to maintain it.
5748s TEST-45-TIMEDATE.sh[158]: If at all possible, use RTC in UTC
5748s TEST-45-TIMEDATE.sh[159]: ++ cat /etc/adjtime
5748s TEST-45-TIMEDATE.sh[111]: + assert_eq $'0.0 0 0\n0\nLOCAL' $'0.0 0
0\n0\nLOCAL'
5748s TEST-45-TIMEDATE.sh[160]: + set +ex
5748s TEST-45-TIMEDATE.sh[111]: ++ restore_adjtime
5748s TEST-45-TIMEDATE.sh[111]: ++ [[ -e /etc/adjtime.bak ]]
5748s TEST-45-TIMEDATE.sh[111]: ++ rm /etc/adjtime
5748s TEST-45-TIMEDATE.sh[104]: + : '+++ testcase_adjtime END +++'
5748s TEST-45-TIMEDATE.sh[104]: + for testcase in "${testcases[@]}"
5748s TEST-45-TIMEDATE.sh[104]: + [[ -n '' ]]
5748s TEST-45-TIMEDATE.sh[104]: + : '+++ testcase_ntp BEGIN +++'
5748s TEST-45-TIMEDATE.sh[162]: + testcase_ntp
5748s TEST-45-TIMEDATE.sh[162]: + systemd-detect-virt --container --quiet
5748s TEST-45-TIMEDATE.sh[162]: + systemctl disable --quiet --now
systemd-timesyncd
5748s TEST-45-TIMEDATE.sh[162]: + mkdir -p
/run/systemd/system/systemd-timesyncd.service.d
5748s TEST-45-TIMEDATE.sh[162]: + cat
5748s TEST-45-TIMEDATE.sh[162]: + systemctl daemon-reload
5748s TEST-45-TIMEDATE.sh[162]: + systemd-run --unit busctl-monitor.service
--service-type=notify busctl monitor --json=short
--match=type=signal,sender=org.freedesktop.timedate1,member=PropertiesChanged,path=/org/freedesktop/timedate1
5748s TEST-45-TIMEDATE.sh[236]: Running as unit: busctl-monitor.service;
invocation ID: b74b02538260452cb87206734f83c158
5748s TEST-45-TIMEDATE.sh[162]: + : 'Disable NTP'
5748s TEST-45-TIMEDATE.sh[238]: ++ date '+%F %T.%6N'
5748s TEST-45-TIMEDATE.sh[162]: + ts='2026-04-19 12:53:08.11580426'
5748s TEST-45-TIMEDATE.sh[162]: + timedatectl set-ntp false
5748s TEST-45-TIMEDATE.sh[162]: + assert_timedated_signal '2026-04-19
12:53:08.11580426' false
5748s TEST-45-TIMEDATE.sh[162]: + local 'timestamp=2026-04-19
12:53:08.11580426'
5748s TEST-45-TIMEDATE.sh[162]: + local value=false
5748s TEST-45-TIMEDATE.sh[162]: + args=('-q' '-n' '1' '--since=2026-04-19
12:53:08.11580426' '-p' 'info' '-t' 'busctl')
5748s TEST-45-TIMEDATE.sh[162]: + local args
5748s TEST-45-TIMEDATE.sh[162]: + journalctl --sync
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s
]3008;start=249395317e724087a232e21861e39bc3;user=root;hostname=H;machineid=5229bac3edbb4ddcb75263376c16d765;bootid=5b34348b970c4dc58c954ece3a8f27e0;pid=85;pidfdid=126450;comm=(agetty);servicename=console-getty.service;invocationid=0920f8dad2134d2b9fc47a73fa800e3f;type=service\
5748s Ubuntu Resolute Raccoon (development branch) (built from systemd tree)
5748s Kernel 7.0.0-14-generic on an x86_64 (console)
5748s H login: root (automatic login)
- 5748s
+ 5748s
5748s TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s Welcome to Ubuntu Resolute Raccoon (development branch) (GNU/Linux
7.0.0-14-generic x86_64)
- 5748s
+ 5748s
5748s * Documentation: https://docs.ubuntu.com
5748s * Management: https://landscape.canonical.com
5748s * Support: https://ubuntu.com/pro
- 5748s
+ 5748s
5748s The programs included with the Ubuntu system are free software;
5748s the exact distribution terms for each program are described in the
5748s individual files in /usr/share/doc/*/copyright.
- 5748s
+ 5748s
5748s Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
5748s applicable law.
- 5748s
+ 5748s
5748s root@H:~# TEST-45-TIMEDATE.sh[162]: + for _ in {0..9}
5748s TEST-45-TIMEDATE.sh[162]: + journalctl -q -n 1 '--since=2026-04-19
12:53:08.11580426' -p info -t busctl --grep .
5748s TEST-45-TIMEDATE.sh[162]: + sleep .5
5748s TEST-45-TIMEDATE.sh[162]: + return 1
5748s
]3008;end=249395317e724087a232e21861e39bc3\]3008;end=bd2f5c4b71464ad786e67e2c02e32c53\Sending
SIGTERM to remaining processes...
5748s Sending SIGKILL to remaining processes...
5748s All filesystems, swaps, loop devices, MD devices and DM devices
detached.
5748s Exiting container.
5748s Finishing after writing 22250 entries
5748s No coredumps found.
- 5748s Test failed, relevant logs can be viewed with:
- 5748s
+ 5748s Test failed, relevant logs can be viewed with:
+ 5748s
5748s journalctl --file
/var/tmp/integration-tests.tsE4HPIg2E/btrfs/build/test/journal/TEST-45-TIMEDATE-1.journal
--no-hostname -o short-monotonic -u TEST-45-TIMEDATE.service -p info
This is due to a bug in rust-coreutils: the timestamp passed to --since
is created in TEST-45-TIMEDATE.sh with `date +"%F %T.%6N"`, but rust-
coreutils does not honor the %6N:
$ date --version
date (uutils coreutils) 0.8.0
$ date +"%F %T.%6N"
2026-06-18 09:47:50.283170485
versus GNU:
$ gnudate +"%F %T.%6N"
2026-06-18 09:47:56.642318
This is already fixed upstream, and should reach Ubuntu via 0.9.0:
https://github.com/uutils/coreutils/issues/12001
+
+ [Test Plan]
+
+ The TEST-45-TIMEDATE test should pass during the upstream dep8 test.
+
+ [Where problems could occur]
+
+ The change is to invoke gnudate instead of date inside
+ TEST-45-TIMEDATE.sh. This is only a test script, so has no exposure to
+ users. So, possible issues would be that the test is broken some other
+ way.
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2157342
Title:
systemd: TEST-45-TIMEDATE is flaky with rust coreutils
To manage notifications about this bug go to:
https://bugs.launchpad.net/rust-coreutils/+bug/2157342/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs