[issue15578] Crash when modifying sys.modules during import

2016-09-07 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 731e5617cc8d by Gregory P. Smith in branch '2.7':
Fix placement of Misc/NEWS item for issue #15578.
https://hg.python.org/cpython/rev/731e5617cc8d

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2016-09-07 Thread Eric Snow

Changes by Eric Snow :


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2016-09-07 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 2d6dd8402d77 by Eric Snow in branch '2.7':
Issue #15578: Correctly incref the parent module while importing.
https://hg.python.org/cpython/rev/2d6dd8402d77

--
nosy: +python-dev

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2013-03-26 Thread Brett Cannon

Brett Cannon added the comment:

Eric has commit rights now so he can commit his own fix. =)

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15578
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2013-03-26 Thread Brett Cannon

Changes by Brett Cannon br...@python.org:


--
assignee:  - eric.snow
nosy:  -brett.cannon

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15578
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2012-08-17 Thread Eric Snow

Eric Snow added the comment:

Here's the deal.  import_module_level() gets called for v1 from sa (where 
globals comes from). In that function it first calls get_parent(), which 
returns a borrowed reference to the sa module object. Then that parent object 
is passed to load_next() where the actual load of v1 will take place (and the 
segfault happens).

The problem is that get_parent() returns a borrowed reference.  When the sa 
module is replaced in sys.modules, the old sa module is decref'ed.  That's fine 
except load_next is using that same module as the parent.  Enter segfault, 
stage left.

Here's a quick patch that fixes the failure (along with a test).

--
keywords: +patch
nosy: +brett.cannon, eric.snow
stage:  - patch review
Added file: http://bugs.python.org/file26883/eric.snow_issue15578.diff

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15578
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2012-08-09 Thread Martin v . Löwis

Changes by Martin v. Löwis mar...@v.loewis.de:


--
versions:  -Python 2.6

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15578
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2012-08-08 Thread nordaux

Changes by nordaux nord...@gmail.com:


--
nosy: +nordaux

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15578
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2012-08-07 Thread Thomas Wouters

New submission from Thomas Wouters:

In a submodule of a package, replacing the parent package in sys.modules during 
import of the package (meaning the only reference to it is in sys.modules) and 
then importing itself (or something from itself) crashes the interpreter:

centurion:~/python/crasher  cat sa/__init__.py
import v1
centurion:~/python/crasher  cat sa/v1/__init__.py
import sys
sys.modules['sa'] = sys.modules[__name__]
import sa
centurion:~/python/crasher  python -c 'import sa'
Segmentation fault (core dumped)

It seems the crash is not entirely deterministic, as we've had the original 
code this was reduced from run in Python 2.4 and 2.6 for years, and only 
discovered the crash when switching to 2.7. However, running the reduced 
testcase crashes for me in all of Python 2.7, 2.6, 2.4 and 2.2, in debug builds 
and opt builds. Given the nature of the bug I expect debug builds to crash 
reliably.

I haven't found the actual source of the problem, but what seems to happen is 
that the import mechanism has a borrowed reference to the 'sa' module around, 
assuming it'll stay alive while the submodules are imported because it's also 
stored in sys.modules. This assumption is incorrect. However, changing the 
import in sa/__init__.py into an absolute or explicit relative import seems to 
fix the problem, which means this probably won't affect Python 3.

--
components: Interpreter Core
messages: 167640
nosy: twouters
priority: normal
severity: normal
status: open
title: Crash when modifying sys.modules during import
type: crash
versions: Python 2.6, Python 2.7

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15578
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2012-08-07 Thread Gregory P. Smith

Changes by Gregory P. Smith g...@krypto.org:


--
nosy: +gregory.p.smith

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15578
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15578] Crash when modifying sys.modules during import

2012-08-07 Thread R. David Murray

R. David Murray added the comment:

If I remember correctly there were non-trivial improvements made to the way 
modules are finalized in 2.7 compared to earlier versions.  That could be what 
exposed the bug.  The pre-2.7 code might have been leaving another reference 
alive because of your more complex real world example, whereas the simplified 
example doesn't.

--
nosy: +r.david.murray

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue15578
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com