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.

Author eric.snow
Recipients Mark.Shannon, corona10, craigh, diabonas, eric.snow, erlendaasland, hroncok, methane, ndjensen, pablogsal, serhiy.storchaka, vstinner
Date 2021-12-15.19:51:13
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1639597873.98.0.240296728575.issue46006@roundup.psfhosted.org>
In-reply-to
Content
It sounds like this bug is another case where we have made some objects
per-interpreter but others are still global and this is causing problems.
_PyUnicode_EqualToASCIIId() wouldn't have any problems if interpreters
weren't sharing any objects (or were only sharing immutable "immortal"
objects).

For now can we just move the relevant per-interpreter strings from
PyInterpreterState.unicode_state ("interned" and "ids") up to
_PyRuntimeState.  They will then be global, which should restore 
the correct behavior.

Personally, I'd rather we not revert the original change.  Moving the data
to _PyRuntimeState would save me some effort with related work I'm doing
right now.

Of course, the potential bug would still exist in _PyUnicode_EqualToASCIIId().
Could we add a test as part of this fix to verify the failure case described
here actually works?
History
Date User Action Args
2021-12-15 19:51:14eric.snowsetrecipients: + eric.snow, vstinner, craigh, methane, Mark.Shannon, serhiy.storchaka, ndjensen, hroncok, corona10, pablogsal, erlendaasland, diabonas
2021-12-15 19:51:13eric.snowsetmessageid: <1639597873.98.0.240296728575.issue46006@roundup.psfhosted.org>
2021-12-15 19:51:13eric.snowlinkissue46006 messages
2021-12-15 19:51:13eric.snowcreate