-
-
Notifications
You must be signed in to change notification settings - Fork 32.4k
Closed
Labels
type-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Description
Bug report
Bug description:
When the CPython's test suite is run inside a systemd-nspawn container with --suppress-sync=true
specified, the following tests fail:
======================================================================
FAIL: test_fdatasync (test.test_os.TestInvalidFD)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/var/tmp/portage/dev-lang/python-3.8.19_p2/work/Python-3.8.19/Lib/test/test_os.py", line 1850, in helper
self.check(getattr(os, f))
File "/var/tmp/portage/dev-lang/python-3.8.19_p2/work/Python-3.8.19/Lib/test/test_os.py", line 1861, in check
self.fail("%r didn't raise an OSError with a bad file descriptor"
AssertionError: <built-in function fdatasync> didn't raise an OSError with a bad file descriptor
======================================================================
FAIL: test_fsync (test.test_os.TestInvalidFD)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/var/tmp/portage/dev-lang/python-3.8.19_p2/work/Python-3.8.19/Lib/test/test_os.py", line 1850, in helper
self.check(getattr(os, f))
File "/var/tmp/portage/dev-lang/python-3.8.19_p2/work/Python-3.8.19/Lib/test/test_os.py", line 1861, in check
self.fail("%r didn't raise an OSError with a bad file descriptor"
AssertionError: <built-in function fsync> didn't raise an OSError with a bad file descriptor
----------------------------------------------------------------------
======================================================================
FAIL: test_flush_return_value (test.test_mmap.MmapTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/var/tmp/portage/dev-lang/python-3.8.19_p2/work/Python-3.8.19/Lib/test/test_mmap.py", line 746, in test_flush_return_value
self.assertRaises(OSError, mm.flush, 1, len(b'python'))
AssertionError: OSError not raised by flush
----------------------------------------------------------------------
This is because systemd-nspawn uses seccomp to stub out fsync()
, fdatasync()
and msync()
calls, and this implies they always return success.
CPython versions tested on:
3.13
Operating systems tested on:
Linux
Linked PRs
Metadata
Metadata
Assignees
Labels
type-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error