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 izbyshev
Recipients izbyshev, paul.moore, steve.dower, tim.golden, zach.ware
Date 2018-03-08.18:42:45
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1520534565.61.0.467229070634.issue33030@psf.upfronthosting.co.za>
In-reply-to
Content
> Ideally, if we don't have to do any work to reacquire the GIL, we shouldn't do any work to preserve the error code either.

Before take_gil() knows whether it has to do any work, it calls MUTEX_LOCK(_PyRuntime.ceval.gil.mutex), which is either EnterCriticalSection() or AcquireSRWLockExclusive(). So unless we can be sure that those functions can't clobber the last error (or we redesign GIL to have a fast-path like an atomic compare-exchange in non-contended case), I don't see how we can avoid the last error bookkeeping.
History
Date User Action Args
2018-03-08 18:42:45izbyshevsetrecipients: + izbyshev, paul.moore, tim.golden, zach.ware, steve.dower
2018-03-08 18:42:45izbyshevsetmessageid: <1520534565.61.0.467229070634.issue33030@psf.upfronthosting.co.za>
2018-03-08 18:42:45izbyshevlinkissue33030 messages
2018-03-08 18:42:45izbyshevcreate