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 rbcollins
Recipients rbcollins
Date 2015-01-19.17:55:08
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1421690108.46.0.51510686328.issue23273@psf.upfronthosting.co.za>
In-reply-to
Content
Discovered in issue 17911, all the traceback calls that render a stack trace end up calling linecache.checkcache, which stats files on disk, making getting a traceback rather more expensive than folk may expect. For "oops, it crashed" situations thats fine, but when used to gather diagnostic details like tulip does, it becomes substantially more wasteful. Since we know when we've reloaded a module, there should be no need to go out to disk at any other time - particularly since if we *haven't* reloaded the module, doing so will just end up showing the wrong source.

Further, PEP 302 source code isn't refreshed when the cache is checked, which can lead to stale code in modules that *have* been reloaded.
History
Date User Action Args
2015-01-19 17:55:08rbcollinssetrecipients: + rbcollins
2015-01-19 17:55:08rbcollinssetmessageid: <1421690108.46.0.51510686328.issue23273@psf.upfronthosting.co.za>
2015-01-19 17:55:08rbcollinslinkissue23273 messages
2015-01-19 17:55:08rbcollinscreate