This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: test_utime fails on MacOS Mojave (Kernel Version 18.6.0:)
Type: Stage: resolved
Components: Tests Versions: Python 3.8
process
Status: closed Resolution: postponed
Dependencies: Superseder:
Assigned To: Nosy List: fbidu, ned.deily, p-ganssle, pablogsal, vstinner, willingc
Priority: normal Keywords:

Created on 2019-06-07 13:04 by pablogsal, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Messages (16)
msg344933 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-06-07 13:04
./python.exe -m test test_os -R : -v
======================================================================
FAIL: test_utime (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/pgalindo3/github/cpython/Lib/test/test_os.py", line 591, in test_utime
    self._test_utime(set_time)
  File "/Users/pgalindo3/github/cpython/Lib/test/test_os.py", line 579, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1559912609.2612822 != 1.002003 within 1e-06 delta (1559912608.2592793 difference)

======================================================================
FAIL: test_utime_by_indexed (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/pgalindo3/github/cpython/Lib/test/test_os.py", line 609, in test_utime_by_indexed
    self._test_utime(set_time)
  File "/Users/pgalindo3/github/cpython/Lib/test/test_os.py", line 579, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1559912609.2679918 != 1.002003 within 1e-06 delta (1559912608.2659888 difference)

======================================================================
FAIL: test_utime_dir_fd (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/pgalindo3/github/cpython/Lib/test/test_os.py", line 651, in test_utime_dir_fd
    self._test_utime(set_time)
  File "/Users/pgalindo3/github/cpython/Lib/test/test_os.py", line 579, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1559912609.2721212 != 1.002003 within 1e-06 delta (1559912608.2701182 difference)

----------------------------------------------------------------------
msg344969 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2019-06-07 16:58
FWIW, it doesn't fail for me and I don't recall ever seeing a failure like this on macOS.  What hardware? ./python.exe -m test.pythoninfo please!
msg344971 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2019-06-07 17:02
Also, what utime* results show up in ./configure output?  I see

checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
msg344977 - (view) Author: Carol Willing (willingc) * (Python committer) Date: 2019-06-07 17:44
Confirming that they do pass on my Mojave system. 

test_utime (test.test_os.UtimeTests) ... ok
test_utime_by_indexed (test.test_os.UtimeTests) ... ok
...
test_utime_dir_fd (test.test_os.UtimeTests) ... ok

Though I did have to go through some shenanigans (which may or may not be related) to get configure and make to run cleanly:
- open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
- removed brewed binutils 
- removed all brewed pythons
- make clean all

Then the normal process worked.
msg344978 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-06-07 17:48
Python debug information
========================

CC.version: Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Py_DEBUG: Yes (sys.gettotalrefcount() present)
_decimal.__libmpdec_version__: 2.4.2
builtins.float.double_format: IEEE, little-endian
builtins.float.float_format: IEEE, little-endian
config[_config_init]: 2
config[_init_main]: 1
config[_install_importlib]: 1
config[argv]: ['-m']
config[base_exec_prefix]: '/usr/local'
config[base_prefix]: '/usr/local'
config[buffered_stdio]: 1
config[bytes_warning]: 0
config[check_hash_pycs_mode]: 'default'
config[configure_c_stdio]: 1
config[dev_mode]: 0
config[dump_refs]: 0
config[exec_prefix]: '/usr/local'
config[executable]: '/Users/pgalindo3/github/cpython/python.exe'
config[faulthandler]: 0
config[filesystem_encoding]: 'utf-8'
config[filesystem_errors]: 'surrogateescape'
config[hash_seed]: 0
config[home]: None
config[import_time]: 0
config[inspect]: 0
config[install_signal_handlers]: 1
config[interactive]: 0
config[isolated]: 0
config[malloc_stats]: 0
config[module_search_paths]: ['/usr/local/lib/python39.zip', '/Users/pgalindo3/github/cpython/Lib', '/Users/pgalindo3/github/cpython/build/lib.macosx-10.14-x86_64-3.9-pydebug']
config[optimization_level]: 0
config[parse_argv]: 1
config[parser_debug]: 0
config[pathconfig_warnings]: 1
config[prefix]: '/usr/local'
config[program_name]: './python.exe'
config[pycache_prefix]: None
config[pythonpath_env]: None
config[quiet]: 0
config[run_command]: None
config[run_filename]: None
config[run_module]: 'test.pythoninfo'
config[show_alloc_count]: 0
config[show_ref_count]: 0
config[site_import]: 1
config[skip_source_first_line]: 0
config[stdio_encoding]: 'utf-8'
config[stdio_errors]: 'strict'
config[tracemalloc]: 0
config[use_environment]: 1
config[use_hash_seed]: 0
config[user_site_directory]: 1
config[verbose]: 0
config[warnoptions]: []
config[write_bytecode]: 1
config[xoptions]: []
datetime.datetime.now: 2019-06-07 18:47:42.879783
expat.EXPAT_VERSION: expat_2.2.6
gdbm.GDBM_VERSION: 1.18.1
global_config[Py_BytesWarningFlag]: 0
global_config[Py_DebugFlag]: 0
global_config[Py_DontWriteBytecodeFlag]: 0
global_config[Py_FileSystemDefaultEncodeErrors]: 'surrogateescape'
global_config[Py_FileSystemDefaultEncoding]: 'utf-8'
global_config[Py_FrozenFlag]: 0
global_config[Py_HasFileSystemDefaultEncoding]: 0
global_config[Py_HashRandomizationFlag]: 1
global_config[Py_IgnoreEnvironmentFlag]: 0
global_config[Py_InspectFlag]: 0
global_config[Py_InteractiveFlag]: 0
global_config[Py_IsolatedFlag]: 0
global_config[Py_NoSiteFlag]: 0
global_config[Py_NoUserSiteDirectory]: 0
global_config[Py_OptimizeFlag]: 0
global_config[Py_QuietFlag]: 0
global_config[Py_UTF8Mode]: 0
global_config[Py_UnbufferedStdioFlag]: 0
global_config[Py_VerboseFlag]: 0
global_config[_Py_HasFileSystemDefaultEncodeErrors]: 0
locale.encoding: UTF-8
os.cpu_count: 12
os.cwd: /Users/pgalindo3/github/cpython
os.environ[CFLAGS]: -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include
os.environ[CPPFLAGS]: -I/usr/local/opt/openssl/include -I/usr/local/opt/zlib/include
os.environ[DISPLAY]: /private/tmp/com.apple.launchd.e9sp6YZNFd/org.macosforge.xquartz:0
os.environ[HOME]: /Users/pgalindo3
os.environ[LANG]: en_GB.UTF-8
os.environ[LC_CTYPE]: en_GB.UTF-8
os.environ[LDFLAGS]: -L/usr/local/opt/zlib/lib
os.environ[LD_LIBRARY_PATH]: /opt/cuda/lib64:
os.environ[PATH]: /Users/pgalindo3/.cargo/bin:/Users/pgalindo3/.cargo/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public/:/usr/local/MacGPG2/bin:/opt/X11/bin:/Users/pgalindo3/.cargo/bin:/opt/cuda/bin:/home/pablogsal/.bin:/Users/pgalindo3/.npm-global/bin/:/Users/pgalindo3/Library/Python/3.7/bin:/home/pablogsal/.gem/ruby/2.3.0/bin:/usr/local/opt/fzf/bin
os.environ[SHELL]: /bin/zsh
os.environ[TERM]: xterm-256color
os.environ[TMPDIR]: /var/folders/sw/ml9tlhsx7hd7sdqpnlzhrxxh0000gr/T/
os.gid: 20
os.groups: 20, 12, 61, 79, 80, 81, 98, 33, 100, 204, 250, 395, 398, 399, 701, 702
os.loadavg: (1.38916015625, 1.4130859375, 1.4541015625)
os.login: pgalindo3
os.name: posix
os.supports_bytes_environ: True
os.supports_effective_ids: ['access']
os.supports_fd: ['chdir', 'chmod', 'chown', 'listdir', 'pathconf', 'scandir', 'stat', 'statvfs', 'truncate', 'utime']
os.supports_follow_symlinks: ['access', 'chflags', 'chmod', 'chown', 'link', 'stat', 'utime']
os.uid: 504
os.umask: 022
os.uname: posix.uname_result(sysname='Darwin', nodename='C02XG51ZJGH5', release='18.6.0', version='Darwin Kernel Version 18.6.0: Thu Apr 25 23:16:27 PDT 2019; root:xnu-4903.261.4~2/RELEASE_X86_64', machine='x86_64')
platform.architecture: 64bit
platform.platform: macOS-10.14.5-x86_64-i386-64bit
platform.python_implementation: CPython
pre_config[_config_init]: 2
pre_config[allocator]: 0
pre_config[coerce_c_locale]: 0
pre_config[coerce_c_locale_warn]: 0
pre_config[configure_locale]: 1
pre_config[dev_mode]: 0
pre_config[isolated]: 0
pre_config[parse_argv]: 1
pre_config[use_environment]: 1
pre_config[utf8_mode]: 0
pymem.allocator: pymalloc_debug
pymem.with_pymalloc: True
readline._READLINE_LIBRARY_VERSION: EditLine wrapper
readline._READLINE_RUNTIME_VERSION: 0x402
readline._READLINE_VERSION: 0x402
resource.RLIMIT_AS: (9223372036854775807, 9223372036854775807)
resource.RLIMIT_CORE: (0, 9223372036854775807)
resource.RLIMIT_CPU: (9223372036854775807, 9223372036854775807)
resource.RLIMIT_DATA: (9223372036854775807, 9223372036854775807)
resource.RLIMIT_FSIZE: (9223372036854775807, 9223372036854775807)
resource.RLIMIT_MEMLOCK: (9223372036854775807, 9223372036854775807)
resource.RLIMIT_NOFILE: (7168, 9223372036854775807)
resource.RLIMIT_NPROC: (1418, 2128)
resource.RLIMIT_RSS: (9223372036854775807, 9223372036854775807)
resource.RLIMIT_STACK: (8388608, 67104768)
resource.pagesize: 4096
socket.hostname: C02XG51ZJGH5
sqlite3.sqlite_version: 3.24.0
sqlite3.version: 2.6.0
ssl.HAS_SNI: True
ssl.OPENSSL_VERSION: OpenSSL 1.0.2r  26 Feb 2019
ssl.OPENSSL_VERSION_INFO: (1, 0, 2, 18, 15)
ssl.OP_ALL: 0x800003ff
ssl.OP_NO_TLSv1_1: 0x10000000
subprocess._USE_POSIX_SPAWN: True
sys.abiflags: d
sys.api_version: 1013
sys.builtin_module_names: ('_abc', '_ast', '_codecs', '_collections', '_functools', '_imp', '_io', '_locale', '_operator', '_signal', '_sre', '_stat', '_string', '_symtable', '_thread', '_tracemalloc', '_warnings', '_weakref', 'atexit', 'builtins', 'errno', 'faulthandler', 'gc', 'itertools', 'marshal', 'posix', 'pwd', 'sys', 'time', 'xxsubtype')
sys.byteorder: little
sys.dont_write_bytecode: False
sys.executable: /Users/pgalindo3/github/cpython/python.exe
sys.filesystem_encoding: utf-8/surrogateescape
sys.flags: sys.flags(debug=0, inspect=0, interactive=0, optimize=0, dont_write_bytecode=0, no_user_site=0, no_site=0, ignore_environment=0, verbose=0, bytes_warning=0, quiet=0, hash_randomization=1, isolated=0, dev_mode=False, utf8_mode=0)
sys.float_info: sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)
sys.float_repr_style: short
sys.hash_info: sys.hash_info(width=64, modulus=2305843009213693951, inf=314159, nan=0, imag=1000003, algorithm='siphash24', hash_bits=64, seed_bits=128, cutoff=0)
sys.hexversion: 50921632
sys.implementation: namespace(_multiarch='darwin', cache_tag='cpython-39', hexversion=50921632, name='cpython', version=sys.version_info(major=3, minor=9, micro=0, releaselevel='alpha', serial=0))
sys.int_info: sys.int_info(bits_per_digit=30, sizeof_digit=4)
sys.maxsize: 9223372036854775807
sys.maxunicode: 1114111
sys.path: ['/Users/pgalindo3/github/cpython', '/usr/local/lib/python39.zip', '/Users/pgalindo3/github/cpython/Lib', '/Users/pgalindo3/github/cpython/build/lib.macosx-10.14-x86_64-3.9-pydebug']
sys.platform: darwin
sys.prefix: /usr/local
sys.stderr.encoding: utf-8/backslashreplace
sys.stdin.encoding: utf-8/strict
sys.stdout.encoding: utf-8/strict
sys.thread_info: sys.thread_info(name='pthread', lock='mutex+cond', version=None)
sys.version: 3.9.0a0 (heads/master:3f345c39255, Jun  7 2019, 14:02:55)  [Clang 10.0.1 (clang-1001.0.46.4)]
sys.version_info: sys.version_info(major=3, minor=9, micro=0, releaselevel='alpha', serial=0)
sysconfig[ABIFLAGS]: d
sysconfig[CC]: gcc
sysconfig[CFLAGS]: -Wno-unused-result -Wsign-compare -g -O0 -Wall -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include
sysconfig[CONFIG_ARGS]: '--with-pydebug' '--with-trace-refs' 'CFLAGS= -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include' 'LDFLAGS= -L/usr/local/opt/zlib/lib' 'CPPFLAGS= -I/usr/local/opt/openssl/include -I/usr/local/opt/zlib/include' 'PKG_CONFIG_PATH=:/usr/local/opt/openssl/lib/pkgconfig:/usr/local/opt/zlib/lib/pkgconfig'
sysconfig[HOST_GNU_TYPE]: x86_64-apple-darwin18.6.0
sysconfig[MACHDEP]: darwin
sysconfig[MULTIARCH]: darwin
sysconfig[OPT]: -g -O0 -Wall
sysconfig[PY_CFLAGS]: -Wno-unused-result -Wsign-compare -g -O0 -Wall -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include
sysconfig[PY_CFLAGS_NODIST]: -std=c99 -Wextra -Wno-unused-result -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -I./Include/internal
sysconfig[PY_CORE_LDFLAGS]: -L/usr/local/opt/zlib/lib -L/usr/local/opt/zlib/lib
sysconfig[PY_LDFLAGS]: -L/usr/local/opt/zlib/lib -L/usr/local/opt/zlib/lib
sysconfig[PY_STDMODULE_CFLAGS]: -Wno-unused-result -Wsign-compare -g -O0 -Wall -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include -std=c99 -Wextra -Wno-unused-result -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -I./Include/internal -I. -I./Include -I/usr/local/opt/openssl/include -I/usr/local/opt/zlib/include -I/usr/local/opt/openssl/include -I/usr/local/opt/zlib/include
sysconfig[Py_DEBUG]: 1
sysconfig[Py_ENABLE_SHARED]: 0
sysconfig[SHELL]: /bin/sh
sysconfig[SOABI]: cpython-39d-darwin
sysconfig[prefix]: /usr/local
test_socket.HAVE_SOCKET_ALG: False
test_socket.HAVE_SOCKET_CAN: False
test_socket.HAVE_SOCKET_CAN_ISOTP: False
test_socket.HAVE_SOCKET_QIPCRTR: False
test_socket.HAVE_SOCKET_RDS: False
test_socket.HAVE_SOCKET_VSOCK: False
test_support.IPV6_ENABLED: True
test_support._is_gui_available: False
test_support.python_is_optimized: False
time.altzone: -3600
time.daylight: 1
time.get_clock_info(monotonic): namespace(adjustable=False, implementation='mach_absolute_time()', monotonic=True, resolution=1e-09)
time.get_clock_info(perf_counter): namespace(adjustable=False, implementation='mach_absolute_time()', monotonic=True, resolution=1e-09)
time.get_clock_info(process_time): namespace(adjustable=False, implementation='clock_gettime(CLOCK_PROCESS_CPUTIME_ID)', monotonic=True, resolution=1.0000000000000002e-06)
time.get_clock_info(thread_time): namespace(adjustable=False, implementation='clock_gettime(CLOCK_THREAD_CPUTIME_ID)', monotonic=True, resolution=1e-09)
time.get_clock_info(time): namespace(adjustable=True, implementation='clock_gettime(CLOCK_REALTIME)', monotonic=False, resolution=1.0000000000000002e-06)
time.time: 1559929662.8793879
time.timezone: 0
time.tzname: ('GMT', 'BST')
tkinter.TCL_VERSION: 8.5
tkinter.TK_VERSION: 8.5
tkinter.info_patchlevel: 8.5.9
zlib.ZLIB_RUNTIME_VERSION: 1.2.11
zlib.ZLIB_VERSION: 1.2.11



------------------------------------------

./configure

checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
msg344979 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-06-07 17:53
The failure tends to be very reliable when running with -R, running the test in isolation or only one time normally succeeds. I will try to investigate more.

The hardware is a MacBook Pro with Mojave 10.14.5, 2.2 GHz Intel Core i7 and 16 GB 2400 MHz DDR4.
msg344985 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-06-07 18:05
For some reason, the files created for this test has a very weird inode information:

❯ ll test_python_**/**/f*
-rw-r--r--  1 pgalindo3  staff     7B  1 Jan  1970 test_python_26370/@test_26370_tmp/f1
msg344986 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-06-07 18:09
> For some reason, the files created for this test has a very weird inode information.

Ok, disregard what I am saying, that's actually part of the test. But I think this is related to the failure. I keep investigating.
msg344988 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-06-07 18:13
Ok, this is the failure once I investigated with pdb:

(Pdb) filename
'@test_28886_tmp/f1'
(Pdb) atime_ns
1002003000
(Pdb) mtime_ns
4005006000
(Pdb) set_time(filename, (atime_ns, mtime_ns))
(Pdb) st = os.stat(filename)
(Pdb) st.st_atime, st.st_mtime
(1559931081.6983175, 4.005006)

Not sure why is that happening.
msg344990 - (view) Author: Carol Willing (willingc) * (Python committer) Date: 2019-06-07 18:15
@pablogsal My debug info looks similar to yours other than shell/terminal preferences. Similar specs on HW and OS.

./python.exe -m test test_os -R : -v Any other configs that you are frequently seeing the failures?
msg344997 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2019-06-07 18:40
WHat kind of file system is @test_28886_tmp/f1 created on?
msg344998 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-06-07 18:42
I will test this on other laptops to try to "bisect" configuration-wise, but for my investigation so far, it seems that the value in the (STRUCT_STAT) st->st_atime is directly wrong (is 1559932701 when the test fails and 1 when the test succeeds).
msg344999 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-06-07 18:44
> WHat kind of file system is @test_28886_tmp/f1 created on?

Apple_APFS
msg354855 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2019-10-17 21:58
@pablogsal, Is this still an issue for you?  AFAIK, there have been no other reports of this behavior.
msg356937 - (view) Author: Pablo Galindo Salgado (pablogsal) * (Python committer) Date: 2019-11-19 00:32
I have not noticed it in a while, so I will close it for now unless I can reproduce it again.
msg396896 - (view) Author: Felipe Rodrigues (fbidu) * Date: 2021-07-03 11:39
Hi all!

I'm seeing the same error that @pablogsal saw here, but I'm on  Linux Mint 20.1 x86_64 (Kernel 5.4.0-77):

./python -m test test_os -R : -v
== CPython 3.11.0a0 (heads/pr_26964:d375c08c75, Jul 3 2021, 07:47:01) [GCC 9.3.0]
== Linux-5.4.0-77-generic-x86_64-with-glibc2.31 little-endian
== cwd: /home/fbidu/collab/cpython/build/test_python_276759æ
== CPU count: 8
== encodings: locale=UTF-8, FS=utf-8
0:00:00 load avg: 0.71 Run tests sequentially
0:00:00 load avg: 0.71 [1/1] test_os

(...)

======================================================================
FAIL: test_utime (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 797, in test_utime
    self._test_utime(set_time)
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 785, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1.0 != 1.002003 within 1e-06 delta (0.002002999999999977 difference)

======================================================================
FAIL: test_utime_by_indexed (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 815, in test_utime_by_indexed
    self._test_utime(set_time)
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 785, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1.0 != 1.002003 within 1e-06 delta (0.002002999999999977 difference)

======================================================================
FAIL: test_utime_by_times (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 824, in test_utime_by_times
    self._test_utime(set_time)
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 785, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1.0 != 1.002003 within 1e-06 delta (0.002002999999999977 difference)

======================================================================
FAIL: test_utime_dir_fd (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 857, in test_utime_dir_fd
    self._test_utime(set_time)
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 785, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1.0 != 1.002003 within 1e-06 delta (0.002002999999999977 difference)

======================================================================
FAIL: test_utime_directory (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 863, in test_utime_directory
    self._test_utime(set_time, filename=self.dirname)
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 785, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1.0 != 1.002003 within 1e-06 delta (0.002002999999999977 difference)

======================================================================
FAIL: test_utime_fd (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 844, in test_utime_fd
    self._test_utime(set_time)
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 785, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1.0 != 1.002003 within 1e-06 delta (0.002002999999999977 difference)

======================================================================
FAIL: test_utime_nofollow_symlinks (test.test_os.UtimeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 834, in test_utime_nofollow_symlinks
    self._test_utime(set_time)
  File "/home/fbidu/collab/cpython/Lib/test/test_os.py", line 785, in _test_utime
    self.assertAlmostEqual(st.st_atime, atime_ns * 1e-9, delta=1e-6)
AssertionError: 1.0 != 1.002003 within 1e-06 delta (0.002002999999999977 difference)

----------------------------------------------------------------------

Ran 314 tests in 1.172s

FAILED (failures=7, skipped=46)


Additional info based on what as asked here originally:

./python -m test.pythoninfo
Python debug information
========================

CC.version: gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Py_DEBUG: Yes (sys.gettotalrefcount() present)
_decimal.__libmpdec_version__: 2.5.1
builtins.float.double_format: IEEE, little-endian
builtins.float.float_format: IEEE, little-endian
config[_config_init]: 2
config[_init_main]: 1
config[_install_importlib]: 1
config[_isolated_interpreter]: 0
config[argv]: ['-m']
config[base_exec_prefix]: '/usr/local'
config[base_executable]: '/home/fbidu/collab/cpython/python'
config[base_prefix]: '/usr/local'
config[buffered_stdio]: 1
config[bytes_warning]: 0
config[check_hash_pycs_mode]: 'default'
config[configure_c_stdio]: 1
config[dev_mode]: 0
config[dump_refs]: 0
config[exec_prefix]: '/usr/local'
config[executable]: '/home/fbidu/collab/cpython/python'
config[faulthandler]: 0
config[filesystem_encoding]: 'utf-8'
config[filesystem_errors]: 'surrogateescape'
config[hash_seed]: 0
config[home]: None
config[import_time]: 0
config[inspect]: 0
config[install_signal_handlers]: 1
config[interactive]: 0
config[isolated]: 0
config[malloc_stats]: 0
config[module_search_paths]: ['/usr/local/lib/python311.zip', '/home/fbidu/collab/cpython/Lib', '/home/fbidu/collab/cpython/build/lib.linux-x86_64-3.11-pydebug']
config[module_search_paths_set]: 1
config[optimization_level]: 0
config[orig_argv]: ['./python', '-m', 'test.pythoninfo']
config[parse_argv]: 2
config[parser_debug]: 0
config[pathconfig_warnings]: 1
config[platlibdir]: 'lib'
config[prefix]: '/usr/local'
config[program_name]: './python'
config[pycache_prefix]: None
config[pythonpath_env]: None
config[quiet]: 0
config[run_command]: None
config[run_filename]: None
config[run_module]: 'test.pythoninfo'
config[show_ref_count]: 0
config[site_import]: 1
config[skip_source_first_line]: 0
config[stdio_encoding]: 'utf-8'
config[stdio_errors]: 'strict'
config[tracemalloc]: 0
config[use_environment]: 1
config[use_hash_seed]: 0
config[user_site_directory]: 1
config[verbose]: 0
config[warn_default_encoding]: 0
config[warnoptions]: []
config[write_bytecode]: 1
config[xoptions]: []
datetime.datetime.now: 2021-07-03 08:30:26.860600
expat.EXPAT_VERSION: expat_2.2.8
fips.openssl_fips_mode: 0
gdb_version: GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
global_config[Py_BytesWarningFlag]: 0
global_config[Py_DebugFlag]: 0
global_config[Py_DontWriteBytecodeFlag]: 0
global_config[Py_FileSystemDefaultEncodeErrors]: 'surrogateescape'
global_config[Py_FileSystemDefaultEncoding]: 'utf-8'
global_config[Py_FrozenFlag]: 0
global_config[Py_HasFileSystemDefaultEncoding]: 0
global_config[Py_HashRandomizationFlag]: 1
global_config[Py_IgnoreEnvironmentFlag]: 0
global_config[Py_InspectFlag]: 0
global_config[Py_InteractiveFlag]: 0
global_config[Py_IsolatedFlag]: 0
global_config[Py_NoSiteFlag]: 0
global_config[Py_NoUserSiteDirectory]: 0
global_config[Py_OptimizeFlag]: 0
global_config[Py_QuietFlag]: 0
global_config[Py_UTF8Mode]: 0
global_config[Py_UnbufferedStdioFlag]: 0
global_config[Py_VerboseFlag]: 0
global_config[_Py_HasFileSystemDefaultEncodeErrors]: 0
locale.encoding: UTF-8
os.cpu_count: 8
os.environ[DISPLAY]: :0
os.environ[HOME]: /home/fbidu
os.environ[LANG]: pt_BR.UTF-8
os.environ[PATH]: /home/fbidu/.poetry/bin:/home/fbidu/.pyenv/shims:/home/fbidu/.pyenv/bin:/home/fbidu/.poetry/bin:/home/fbidu/bin:/usr/local/bin:/home/fbidu/.local/bin:/home/fbidu/.poetry/bin:/home/fbidu/.local/bin:/home/fbidu/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/go/bin:/home/fbidu/n/bin
os.environ[SHELL]: /usr/bin/zsh
os.environ[TERM]: xterm-256color
os.getcwd: /home/fbidu/collab/cpython
os.getegid: 1000
os.geteuid: 1000
os.getgid: 1000
os.getgrouplist: 1000, 4, 24, 27, 30, 46, 114, 134, 999
os.getgroups: 4, 24, 27, 30, 46, 114, 134, 999, 1000
os.getloadavg: (1.13, 0.77, 0.98)
os.getrandom: ready (initialized)
os.getresgid: (1000, 1000, 1000)
os.getresuid: (1000, 1000, 1000)
os.getuid: 1000
os.login: fbidu
os.name: posix
os.supports_bytes_environ: True
os.supports_effective_ids: ['access']
os.supports_fd: ['chdir', 'chmod', 'chown', 'execve', 'listdir', 'pathconf', 'scandir', 'stat', 'statvfs', 'truncate', 'utime']
os.supports_follow_symlinks: ['access', 'chown', 'link', 'stat', 'utime']
os.umask: 0o002
os.uname: posix.uname_result(sysname='Linux', nodename='bDesk', release='5.4.0-77-generic', version='#86-Ubuntu SMP Thu Jun 17 02:35:03 UTC 2021', machine='x86_64')
path_config[exec_prefix]: '/usr/local'
path_config[home]: None
path_config[module_search_path]: '/usr/local/lib/python311.zip:/home/fbidu/collab/cpython/Lib:/home/fbidu/collab/cpython/build/lib.linux-x86_64-3.11-pydebug'
path_config[prefix]: '/usr/local'
path_config[program_full_path]: '/home/fbidu/collab/cpython/python'
path_config[program_name]: './python'
platform.architecture: 64bit ELF
platform.libc_ver: glibc 2.31
platform.platform: Linux-5.4.0-77-generic-x86_64-with-glibc2.31
platform.python_implementation: CPython
pre_config[_config_init]: 2
pre_config[allocator]: 0
pre_config[coerce_c_locale]: 0
pre_config[coerce_c_locale_warn]: 0
pre_config[configure_locale]: 1
pre_config[dev_mode]: 0
pre_config[isolated]: 0
pre_config[parse_argv]: 1
pre_config[use_environment]: 1
pre_config[utf8_mode]: 0
pwd.getpwuid(1000): pwd.struct_passwd(pw_name='fbidu', pw_passwd='x', pw_uid=1000, pw_gid=1000, pw_gecos='F. Bidu,,,', pw_dir='/home/fbidu', pw_shell='/usr/bin/zsh')
pymem.allocator: pymalloc_debug
pymem.with_pymalloc: True
readline._READLINE_LIBRARY_VERSION: 8.0
readline._READLINE_RUNTIME_VERSION: 0x800
readline._READLINE_VERSION: 0x800
resource.RLIMIT_AS: (-1, -1)
resource.RLIMIT_CORE: (0, -1)
resource.RLIMIT_CPU: (-1, -1)
resource.RLIMIT_DATA: (-1, -1)
resource.RLIMIT_FSIZE: (-1, -1)
resource.RLIMIT_MEMLOCK: (67108864, 67108864)
resource.RLIMIT_MSGQUEUE: (819200, 819200)
resource.RLIMIT_NICE: (0, 0)
resource.RLIMIT_NOFILE: (1024, 1048576)
resource.RLIMIT_NPROC: (127802, 127802)
resource.RLIMIT_OFILE: (1024, 1048576)
resource.RLIMIT_RSS: (-1, -1)
resource.RLIMIT_RTPRIO: (0, 0)
resource.RLIMIT_RTTIME: (-1, -1)
resource.RLIMIT_SIGPENDING: (127802, 127802)
resource.RLIMIT_STACK: (8388608, -1)
resource.pagesize: 4096
socket.hostname: bDesk
sqlite3.sqlite_version: 3.31.1
sqlite3.version: 2.6.0
ssl.HAS_SNI: True
ssl.OPENSSL_VERSION: OpenSSL 1.1.1f  31 Mar 2020
ssl.OPENSSL_VERSION_INFO: (1, 1, 1, 6, 15)
ssl.OP_ALL: 0x80000054
ssl.OP_NO_TLSv1_1: 0x10000000
ssl.SSLContext.maximum_version: MAXIMUM_SUPPORTED
ssl.SSLContext.minimum_version: TLSv1_2
ssl.SSLContext.options: OP_NO_COMPRESSION|OP_ENABLE_MIDDLEBOX_COMPAT|OP_CIPHER_SERVER_PREFERENCE|OP_NO_SSLv3|0x80000054
ssl.SSLContext.protocol: PROTOCOL_TLS_CLIENT
ssl.SSLContext.verify_mode: CERT_REQUIRED
ssl.default_https_context.maximum_version: MAXIMUM_SUPPORTED
ssl.default_https_context.minimum_version: TLSv1_2
ssl.default_https_context.options: OP_NO_COMPRESSION|OP_ENABLE_MIDDLEBOX_COMPAT|OP_CIPHER_SERVER_PREFERENCE|OP_NO_SSLv3|0x80000054
ssl.default_https_context.protocol: PROTOCOL_TLS_CLIENT
ssl.default_https_context.verify_mode: CERT_REQUIRED
ssl.stdlib_context.maximum_version: MAXIMUM_SUPPORTED
ssl.stdlib_context.minimum_version: TLSv1_2
ssl.stdlib_context.options: OP_NO_COMPRESSION|OP_ENABLE_MIDDLEBOX_COMPAT|OP_CIPHER_SERVER_PREFERENCE|OP_NO_SSLv3|0x80000054
ssl.stdlib_context.protocol: PROTOCOL_TLS_CLIENT
ssl.stdlib_context.verify_mode: CERT_NONE
subprocess._USE_POSIX_SPAWN: True
sys.abiflags: d
sys.api_version: 1013
sys.builtin_module_names: ('_abc', '_ast', '_codecs', '_collections', '_functools', '_imp', '_io', '_locale', '_operator', '_signal', '_sre', '_stat', '_string', '_symtable', '_thread', '_tracemalloc', '_warnings', '_weakref', 'atexit', 'builtins', 'errno', 'faulthandler', 'gc', 'itertools', 'marshal', 'posix', 'pwd', 'sys', 'time', 'xxsubtype')
sys.byteorder: little
sys.dont_write_bytecode: False
sys.executable: /home/fbidu/collab/cpython/python
sys.filesystem_encoding: utf-8/surrogateescape
sys.flags: sys.flags(debug=0, inspect=0, interactive=0, optimize=0, dont_write_bytecode=0, no_user_site=0, no_site=0, ignore_environment=0, verbose=0, bytes_warning=0, quiet=0, hash_randomization=1, isolated=0, dev_mode=False, utf8_mode=0, warn_default_encoding=0)
sys.float_info: sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)
sys.float_repr_style: short
sys.hash_info: sys.hash_info(width=64, modulus=2305843009213693951, inf=314159, nan=0, imag=1000003, algorithm='siphash24', hash_bits=64, seed_bits=128, cutoff=0)
sys.hexversion: 51052704
sys.implementation: namespace(name='cpython', cache_tag='cpython-311', version=sys.version_info(major=3, minor=11, micro=0, releaselevel='alpha', serial=0), hexversion=51052704, _multiarch='x86_64-linux-gnu')
sys.int_info: sys.int_info(bits_per_digit=30, sizeof_digit=4)
sys.maxsize: 9223372036854775807
sys.maxunicode: 1114111
sys.path: ['/home/fbidu/collab/cpython', '/usr/local/lib/python311.zip', '/home/fbidu/collab/cpython/Lib', '/home/fbidu/collab/cpython/build/lib.linux-x86_64-3.11-pydebug', '/home/fbidu/.local/lib/python3.11/site-packages']
sys.platform: linux
sys.prefix: /usr/local
sys.stderr.encoding: utf-8/backslashreplace
sys.stdin.encoding: utf-8/strict
sys.stdout.encoding: utf-8/strict
sys.thread_info: sys.thread_info(name='pthread', lock='semaphore', version='NPTL 2.31')
sys.version: 3.11.0a0 (heads/pr_26964:d375c08c75, Jul  3 2021, 07:47:01) [GCC 9.3.0]
sys.version_info: sys.version_info(major=3, minor=11, micro=0, releaselevel='alpha', serial=0)
sysconfig[ABIFLAGS]: d
sysconfig[CCSHARED]: -fPIC
sysconfig[CC]: gcc -pthread
sysconfig[CFLAGS]: -Wno-unused-result -Wsign-compare -g -Og -Wall
sysconfig[CONFIG_ARGS]: '--with-pydebug'
sysconfig[HOST_GNU_TYPE]: x86_64-pc-linux-gnu
sysconfig[MACHDEP]: linux
sysconfig[MULTIARCH]: x86_64-linux-gnu
sysconfig[OPT]: -g -Og -Wall
sysconfig[PY_CFLAGS]: -Wno-unused-result -Wsign-compare -g -Og -Wall
sysconfig[PY_CFLAGS_NODIST]: -std=c99 -Wextra -Wno-unused-result -Wno-unused-parameter -Wno-missing-field-initializers -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal
sysconfig[PY_STDMODULE_CFLAGS]: -Wno-unused-result -Wsign-compare -g -Og -Wall -std=c99 -Wextra -Wno-unused-result -Wno-unused-parameter -Wno-missing-field-initializers -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal -I. -I./Include
sysconfig[Py_DEBUG]: 1
sysconfig[Py_ENABLE_SHARED]: 0
sysconfig[SHELL]: /bin/sh
sysconfig[SOABI]: cpython-311d-x86_64-linux-gnu
sysconfig[prefix]: /usr/local
test_socket.HAVE_SOCKET_ALG: True
test_socket.HAVE_SOCKET_BLUETOOTH: False
test_socket.HAVE_SOCKET_CAN: True
test_socket.HAVE_SOCKET_CAN_ISOTP: False
test_socket.HAVE_SOCKET_CAN_J1939: True
test_socket.HAVE_SOCKET_QIPCRTR: False
test_socket.HAVE_SOCKET_RDS: False
test_socket.HAVE_SOCKET_UDPLITE: True
test_socket.HAVE_SOCKET_VSOCK: False
test_support._is_gui_available: True
test_support.python_is_optimized: False
time.altzone: 10800
time.daylight: 0
time.get_clock_info(monotonic): namespace(implementation='clock_gettime(CLOCK_MONOTONIC)', monotonic=True, adjustable=False, resolution=1e-09)
time.get_clock_info(perf_counter): namespace(implementation='clock_gettime(CLOCK_MONOTONIC)', monotonic=True, adjustable=False, resolution=1e-09)
time.get_clock_info(process_time): namespace(implementation='clock_gettime(CLOCK_PROCESS_CPUTIME_ID)', monotonic=True, adjustable=False, resolution=1e-09)
time.get_clock_info(thread_time): namespace(implementation='clock_gettime(CLOCK_THREAD_CPUTIME_ID)', monotonic=True, adjustable=False, resolution=1e-09)
time.get_clock_info(time): namespace(implementation='clock_gettime(CLOCK_REALTIME)', monotonic=False, adjustable=True, resolution=1e-09)
time.time: 1625311826.9446275
time.timezone: 10800
time.tzname: ('-03', '-03')
tkinter.TCL_VERSION: 8.6
tkinter.TK_VERSION: 8.6
tkinter.info_patchlevel: 8.6.10
zlib.ZLIB_RUNTIME_VERSION: 1.2.11
zlib.ZLIB_VERSION: 1.2.11



./configure | grep utime
checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
./configure: line 10499: PKG_PROG_PKG_CONFIG: command not found
checking for futimesat... yes
checking for futimens... yes
checking for futimes... yes
checking for lutimes... yes
checking for utimensat... yes
checking for utimes... yes

I'm running this on an AMD Ryzen 3 3300X CPU. My storage is a NVMe "Samsung SSD 980 PRO". Also this is a fresh clone of the cpython repo, all I did was running a ./configure --with-pydebug, building it and then I went on to work on reviewing the patch for bpo-44539
History
Date User Action Args
2022-04-11 14:59:16adminsetgithub: 81376
2021-07-03 11:39:34fbidusetnosy: + fbidu
messages: + msg396896
2019-11-19 00:32:24pablogsalsetstatus: open -> closed
resolution: postponed
messages: + msg356937

stage: resolved
2019-10-17 21:58:33ned.deilysetmessages: + msg354855
2019-06-07 18:44:02pablogsalsetmessages: + msg344999
2019-06-07 18:42:26pablogsalsetmessages: + msg344998
2019-06-07 18:40:15ned.deilysetmessages: + msg344997
2019-06-07 18:15:47willingcsetmessages: + msg344990
2019-06-07 18:13:00pablogsalsetmessages: + msg344988
2019-06-07 18:09:20pablogsalsetmessages: + msg344986
2019-06-07 18:05:12pablogsalsetmessages: + msg344985
2019-06-07 18:02:09pablogsalsetmessages: - msg344983
2019-06-07 18:01:10pablogsalsetmessages: + msg344983
2019-06-07 17:53:26pablogsalsetmessages: + msg344979
2019-06-07 17:48:43pablogsalsetmessages: + msg344978
2019-06-07 17:44:26willingcsetnosy: + willingc
messages: + msg344977
2019-06-07 17:02:27ned.deilysetmessages: + msg344971
2019-06-07 16:58:40ned.deilysetnosy: + ned.deily
messages: + msg344969
2019-06-07 13:45:50xtreaksetnosy: + p-ganssle
2019-06-07 13:04:54pablogsalcreate