bpo-42972: Track sqlite3 statement objects#26475
Conversation
|
A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated. Once you have made the requested changes, please leave a comment on this pull request containing the phrase |
Sorry, something went wrong.
By allocating and tracking creation of statement object in pysqlite_statement_create(), the caller does not need to worry about GC syncronization, and eliminates the possibility of getting a badly created object. All related fault handling is moved to pysqlite_statement_create().
vstinner
left a comment
There was a problem hiding this comment.
LGTM, but I would like to see the minor issues being addressed first before merging your change.
Sorry, something went wrong.
ee00a0d to
6b1ea0c
Compare
June 1, 2021 10:08
Co-authored-by: Victor Stinner <vstinner@python.org>
6b1ea0c to
4f03b79
Compare
June 1, 2021 10:15
vstinner
left a comment
There was a problem hiding this comment.
LGTM.
Sorry, something went wrong.
|
Merged, thanks. |
Sorry, something went wrong.
Thanks for reviewing, Victor & Pablo! |
Sorry, something went wrong.
|
Thanks @erlend-aasland for the PR, and @vstinner for merging it 🌮🎉.. I'm working now to backport this PR to: 3.10. |
Sorry, something went wrong.
|
Sorry, @erlend-aasland and @vstinner, I could not cleanly backport this to |
Sorry, something went wrong.
|
@erlend-aasland: Automated backport to 3.10 failed, can you try to backport the change manually? @pablogsal: I'm not sure if this change is really a bugfix or an enhancement. I'm ok to backport it even after beta2 release. |
Sorry, something went wrong.
Will do! |
Sorry, something went wrong.
Allocate and track statement objects in pysqlite_statement_create. By allocating and tracking creation of statement object in pysqlite_statement_create(), the caller does not need to worry about GC syncronization, and eliminates the possibility of getting a badly created object. All related fault handling is moved to pysqlite_statement_create(). Co-authored-by: Victor Stinner <vstinner@python.org>. (cherry picked from commit fffa0f9) Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
Allocate and track statement objects in pysqlite_statement_create. By allocating and tracking creation of statement object in pysqlite_statement_create(), the caller does not need to worry about GC syncronization, and eliminates the possibility of getting a badly created object. All related fault handling is moved to pysqlite_statement_create(). Co-authored-by: Victor Stinner <vstinner@python.org>. (cherry picked from commit fffa0f9) Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
https://bugs.python.org/issue42972