
|
If you were logged in you would be able to see more operations.
|
|
|
| Resolution Date: |
06/Mar/06 08:17 AM
|
|
The test_Session_Session_conf() of test/test.py doesn't override the default DBM session database name that would be used for prefork/worker MPM variants. This means that if there is already an instance of Apache running as its designated user which has already created the session database and the tests are run as a different user, the test will fail. Further, if mod_python has never previously been used and no session database exists, the test will succeed, but when someone goes to use sessions in the installed mod_python, it will fail in the case where the session database created by the test was as a different user to that which Apache runs as.
The test suite should ensure that it overrides any defaults and stores such databases in test suite document tree. It should possibly also ensure that such transient files are removed so as not to create a problem on subsequent tests.
Test might therefore be changed to:
def test_Session_Session_conf(self):
database = os.path.join(TESTHOME,"mp_sess_test.dbm")
c = VirtualHost("*",
ServerName("test_Session_Session"),
DocumentRoot(DOCUMENT_ROOT),
Directory(DOCUMENT_ROOT,
PythonOption('session_dbm "%s"' % database),
SetHandler("mod_python"),
PythonHandler("tests::Session_Session"),
PythonDebug("On")))
return str(c)
|
|
Description
|
The test_Session_Session_conf() of test/test.py doesn't override the default DBM session database name that would be used for prefork/worker MPM variants. This means that if there is already an instance of Apache running as its designated user which has already created the session database and the tests are run as a different user, the test will fail. Further, if mod_python has never previously been used and no session database exists, the test will succeed, but when someone goes to use sessions in the installed mod_python, it will fail in the case where the session database created by the test was as a different user to that which Apache runs as.
The test suite should ensure that it overrides any defaults and stores such databases in test suite document tree. It should possibly also ensure that such transient files are removed so as not to create a problem on subsequent tests.
Test might therefore be changed to:
def test_Session_Session_conf(self):
database = os.path.join(TESTHOME,"mp_sess_test.dbm")
c = VirtualHost("*",
ServerName("test_Session_Session"),
DocumentRoot(DOCUMENT_ROOT),
Directory(DOCUMENT_ROOT,
PythonOption('session_dbm "%s"' % database),
SetHandler("mod_python"),
PythonHandler("tests::Session_Session"),
PythonDebug("On")))
return str(c)
|
Show » |
made changes - 26/Feb/06 04:02 AM
| Field |
Original Value |
New Value |
|
Assignee
|
|
Jim Gallacher
[ jgallacher
]
|
made changes - 06/Mar/06 08:17 AM
|
Fix Version/s
|
|
3.3
[ 12310101
]
|
|
Resolution
|
|
Fixed
[ 1
]
|
|
Status
|
Open
[ 1
]
|
Resolved
[ 5
]
|
made changes - 06/Mar/06 08:33 AM
|
Fix Version/s
|
|
3.2.x
[ 12310860
]
|
|
Fix Version/s
|
3.3
[ 12310101
]
|
|
made changes - 12/Aug/06 07:51 AM
|
Fix Version/s
|
|
3.2.10
[ 12312029
]
|
|
Fix Version/s
|
|
3.3
[ 12310101
]
|
|
Fix Version/s
|
3.2.x
[ 12310860
]
|
|
| Repository |
Revision |
Date |
User |
Message |
| ASF |
#466169 |
Fri Oct 20 16:19:10 UTC 2006 |
jgallacher |
(MODPYTHON-119) test_psp_error was automagically creating a dbm file session
file, but the configuration for the test did not include a PythonOption
for the session_directory. Thus the mp_sess.dbm file was being created
in the default location. Running the tests could interfer with another
Apache mod_python instance running on the same host.
|
| Files Changed |
MODIFY
/httpd/mod_python/trunk/test/test.py
|
made changes - 05/Apr/07 11:40 AM
|
Status
|
Resolved
[ 5
]
|
Closed
[ 6
]
|
|