[ python-Bugs-1163563 ] Sub threads execute in restricted mode
SourceForge.net
noreply at sourceforge.net
Thu Mar 31 08:24:15 CEST 2005
Bugs item #1163563, was opened at 2005-03-15 03:56
Message generated for change (Comment added) made by goatpunch
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1163563&group_id=5470
Category: Threads
Group: Python 2.4
Status: Open
Resolution: None
Priority: 5
Submitted By: anothermax (yetanothermax)
Assigned to: Nobody/Anonymous (nobody)
Summary: Sub threads execute in restricted mode
Initial Comment:
I'm using the JEP product which allows integration
of Java with Python (see http://jepp.sourceforge.net) via
starting a Python interpreter in the same process as the
JVM.
This integrates with python via the C interface, allowing
the user to 'eval' python code (amongst other features).
It seems that since Python 2.3.5 any threads (using the
threading module) created via code that has been
evaluated through the jep.eval() interface (i.e.Python C
interface )are executed in restricted mode and cannot,
for example, create files. Code that is just evaled (i.e not
in a subthread) thread has no restrictions.
The error reported is:
IOError: file() constructor not accessible in restricted
mode
(see http://sourceforge.net/forum/forum.php?
thread_id=1247793&forum_id=376782) - I've given a JEP
specific example here.
There seems to be a similar problem with mod_python
(see
http://www.modpython.org/pipermail/mod_python/2005-
January/017129.html)
Reading through the release notes for Python 2.3.5
I see:
Bug #754449: threading.Thread will no longer mask
exceptions raised during interpreter shutdown with
another exception caused by attempting to output the
initial exception. This fix also includes a backport of rev.
1.41 from HEAD.
This might be the problem as it seems to involve the
porting of 2.4 threading code back to the 2.3 tree.
I've attached a Java file which shows the problem when
using JEP.
The error output is:
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\Python24\Lib\threading.py", line 442, in
__bootstrap
File "<string>", line 5, in run
IOError: file() constructor not accessible in restricted
mode
2.4.1c1 (#63, Mar 10 2005, 10:36:41) [MSC v.1310 32
bit (Intel)]
Creating file from main thread...
Done
Creating file from sub thread...
Done
----------------------------------------------------------------------
Comment By: Alan Davies (goatpunch)
Date: 2005-03-31 01:24
Message:
Logged In: YES
user_id=967140
The same problem definately does occur with mod_python,
I've found it to occur with Python 2.3.5 and 2.4 on Win32:
http://www.modpython.org/pipermail/mod_python/2005-
March/017802.html
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1163563&group_id=5470
More information about the Python-bugs-list
mailing list