Eric Snow <ericsnowcurren...@gmail.com> added the comment:
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? ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue46006> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com