Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

GH-101696: invalidate type version tag in_PyStaticType_Dealloc#101697

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
kumaraditya303 merged 3 commits intopython:mainfromkumaraditya303:versiontag
Feb 8, 2023

Conversation

@kumaraditya303
Copy link
Contributor

@kumaraditya303kumaraditya303 commentedFeb 8, 2023
edited by bedevere-bot
Loading

@kumaraditya303kumaraditya303 added type-bugAn unexpected behavior, bug, or error interpreter-core(Objects, Python, Grammar, and Parser dirs) needs backport to 3.11only security fixes labelsFeb 8, 2023
@miss-islington
Copy link
Contributor

Thanks@kumaraditya303 for the PR 🌮🎉.. I'm working now to backport this PR to: 3.11.
🐍🍒⛏🤖

@kumaraditya303kumaraditya303 deleted the versiontag branchFebruary 8, 2023 18:02
@erlend-aaslanderlend-aasland added needs backport to 3.11only security fixes and removed needs backport to 3.11only security fixes labelsFeb 9, 2023
@miss-islington
Copy link
Contributor

Thanks@kumaraditya303 for the PR 🌮🎉.. I'm working now to backport this PR to: 3.11.
🐍🍒⛏🤖

@miss-islington
Copy link
Contributor

Sorry,@kumaraditya303, I could not cleanly backport this to3.11 due to a conflict.
Please backport usingcherry_picker on command line.
cherry_picker d9de0792482d2ded364b0c7d2867b97a5da41b12 3.11

@bedevere-bot
Copy link

GH-101722 is a backport of this pull request to the3.11 branch.

@bedevere-botbedevere-bot removed the needs backport to 3.11only security fixes labelFeb 9, 2023
erlend-aasland pushed a commit to erlend-aasland/cpython that referenced this pull requestFeb 9, 2023
…_Dealloc` (pythonGH-101697).(cherry picked from commitd9de079)Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
@markshannon
Copy link
Member

This makes no sense to me.

Static types should be immutable; their version number should never change.

See#101603

ambv reacted with thumbs up emoji

@kumaraditya303
Copy link
ContributorAuthor

Static types should be immutable; their version number should never change.

It is still the case but when the interpreter is initialized multiple times then the type still has the same old version tag and can cause assertion failures. Note that the type cache is per interp now and is cleared on every cycle. Seehttps://github.com/python/cpython/actions/runs/4112993949/jobs/7098592004 as an example.

erlend-aasland reacted with thumbs up emoji

@markshannon
Copy link
Member

I don't think that this PR fixes the root problem, although it almost certainly no worse than what we had before.

What assertions fails? "Can cause assertion failures" doesn't tell me anything.

When you say "the interpreter" how does this handle sub-interpreters?
The problems are that heap and static types are sharing the same versions, and that versions are shared across interpreters.

@ericsnowcurrently might have thoughts on this.

@erlend-aasland
Copy link
Contributor

What assertions fails? "Can cause assertion failures" doesn't tell me anything.

See the GH Action run that Kumar linked to for an example. I'll quote it for you:

Objects/typeobject.c:4174: _PyType_Lookup: Assertion `_PyType_HasFeature(type, Py_TPFLAGS_VALID_VERSION_TAG)' failed.

This is fromtest_finalize_structseq intest_embed.

@ericsnowcurrently
Copy link
Member

When you say "the interpreter" how does this handle sub-interpreters?
The problems are that heap and static types are sharing the same versions, and that versions are shared across interpreters.

As@kumaraditya303 mentioned ingh-101696, subinterpreters will be dealt with viagh-95795.

erlend-aasland reacted with thumbs up emoji

carljm added a commit to carljm/cpython that referenced this pull requestFeb 9, 2023
* main: (82 commits)pythongh-101670: typo fix in PyImport_ExtendInittab() (python#101723)pythonGH-99293: Document that `Py_TPFLAGS_VALID_VERSION_TAG` shouldn't be used. (#pythonGH-101736)  no-issue: Add Dong-hee Na as the cjkcodecs codeowner (pythongh-101731)pythongh-101678: Merge math_1_to_whatever() and math_1() (python#101730)pythongh-101678: refactor the math module to use special functions from c11 (pythonGH-101679)pythongh-85984: Remove legacy Lib/pty.py code. (python#92365)pythongh-98831: Use opcode metadata for stack_effect() (python#101704)pythongh-101283: Version was just released, so should be changed in 3.11.3 (pythonGH-101719)pythongh-101283: Fix use of unbound variable (pythonGH-101712)pythongh-101283: Improved fallback logic for subprocess with shell=True on Windows (pythonGH-101286)pythongh-101277: Port more itertools static types to heap types (python#101304)pythongh-98831: Modernize CALL and family (python#101508)pythonGH-101696: invalidate type version tag in `_PyStaticType_Dealloc` (python#101697)pythongh-100221: Fix creating dirs in `make sharedinstall` (pythonGH-100329)pythongh-101670: typo fix in PyImport_AppendInittab() (pythonGH-101672)pythongh-101196: Make isdir/isfile/exists faster on Windows (pythonGH-101324)pythongh-101614: Don't treat python3_d.dll as a Python DLL when checking extension modules for incompatibility (pythonGH-101615)pythongh-100933: Improve `check_element` helper in `test_xml_etree` (python#100934)pythonGH-101578: Normalize the current exception (pythonGH-101607)pythongh-47937: Note that Popen attributes are read-only (python#93070)  ...
kumaraditya303 added a commit that referenced this pull requestFeb 11, 2023
…oc` (GH-101697) (#101722)[3.11]GH-101696: invalidate type version tag in `_PyStaticType_Dealloc` (GH-101697).(cherry picked from commitd9de079)Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

@erlend-aaslanderlend-aaslanderlend-aasland approved these changes

@markshannonmarkshannonAwaiting requested review from markshannonmarkshannon is a code owner

Assignees

@kumaraditya303kumaraditya303

Labels

awaiting mergeinterpreter-core(Objects, Python, Grammar, and Parser dirs)type-bugAn unexpected behavior, bug, or error

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

6 participants

@kumaraditya303@miss-islington@bedevere-bot@markshannon@erlend-aasland@ericsnowcurrently

[8]ページ先頭

©2009-2025 Movatter.jp