Apache Mod-Python - Created: (MODPYTHON-150) make_obcallback not thread

This is Interesting: Free IT Magazines  
Home > Archive > Apache Mod-Python > March 2006 > Created: (MODPYTHON-150) make_obcallback not thread





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Created: (MODPYTHON-150) make_obcallback not thread
Graham Dumpleton (JIRA)

2006-03-21, 5:48 pm

make_obcallback not thread protected
------------------------------------

Key: MODPYTHON-150
URL: http://issues.apache.org/jira/browse/MODPYTHON-150
Project: mod_python
Type: Bug
Components: core
Versions: 3.2.8, 3.1.4
Reporter: Graham Dumpleton
Assigned to: Graham Dumpleton


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 inte
rpreter 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.

Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com