[
https://issues.apache.org/jira/browse/MODPYTHON-150?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Graham Dumpleton closed MODPYTHON-150.
--------------------------------------
> make_obcallback not thread protected
> ------------------------------------
>
> Key: MODPYTHON-150
> URL: https://issues.apache.org/jira/browse/MODPYTHON-150
> Project: mod_python
> Issue Type: Bug
> Components: core
> Affects Versions: 3.1.4, 3.2.8
> Reporter: Graham Dumpleton
> Assigned To: Graham Dumpleton
> Fix For: 3.3
>
>
> In get_interpreter() function of src/mod_python.c the check of whether or not
> the callback object has been created is not within the bounds of the
> acquisition of the interpreters lock. As a result, in a multithreaded MPM,
> although the creation of the interpreter itself is protected so that only one
> thread will get to create it, multiple threads may decide the need to call
> make_obcallback().
> In the past this hasn't mattered, but now that apache.init() is doing more
> complicated things, such as caching parameters as global variables and also
> doing fiddles with the callback object to allow optional use of new module
> importer, problems can start to arise.
> To fix the issue the release of the interpreters lock needs to be moved to
> the end of the get_interpreter() function.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.