When attempting to run the test harness, I receive the following:
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "C:\Public\Devel\cpython\main\Lib\test\__main__.py", line 2, in <module>
main()
^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\libregrtest\main.py", line 736, in main
Regrtest().main(tests=tests, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\contextlib.py", line 155, in __exit__
self.gen.throw(typ, value, traceback)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\contextlib.py", line 155, in __exit__
self.gen.throw(typ, value, traceback)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\support\os_helper.py", line 396, in temp_dir
yield path
^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\contextlib.py", line 155, in __exit__
self.gen.throw(typ, value, traceback)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\support\os_helper.py", line 427, in change_cwd
yield os.getcwd()
^^^^^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\support\os_helper.py", line 449, in temp_cwd
yield cwd_dir
^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\libregrtest\main.py", line 658, in main
self._main(tests, kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\libregrtest\main.py", line 704, in _main
self.win_load_tracker = WindowsLoadTracker()
^^^^^^^^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\libregrtest\win_utils.py", line 41, in __init__
self.start()
^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\libregrtest\win_utils.py", line 70, in start
counter_name = self._get_counter_name()
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Public\Devel\cpython\main\Lib\test\libregrtest\win_utils.py", line 90, in _get_counter_name
system = counters_dict['2']
~~~~~~~~~~~~~^^^^^
KeyError: '2'
This is due to my machine missing the localized names for the performance counters. Other performance monitoring tools operate just fine.
While I have been working around this issue for some time, it has become difficult to seperate the workarounds from actually changes in the test harness.
The PR (https://github.com/python/cpython/pull/26578) from https://bugs.python.org/issue44336 also solves this issue by accessing the counters directly instead of relying on their localized names.
|