Re: [SciPy-dev] [SciPy-Dec] scipy.weave crashes for pure inline
![](https://secure.gravatar.com/avatar/d930aeb9c0371f8db3e239de17a199aa.jpg?s=120&d=mm&r=g)
For the record of the archives/mailinglist, I just want to mention that there is a patch avaialble for the problem described below. It can be found at : http://projects.scipy.org/scipy/ticket/855
On Tue, 2009-09-22 at 14:47 -0700, Thomas Robitaille wrote:
Hi,
I'm using a recent svn revision of scipy (5925). After installing it I went to scipy/weave/examples and ran 'python array3d.py'. I get the following error message (below). Can other people reproduce this problem? If not, maybe it's some local installation issue.
Thanks,
Thomas
---
numpy: [[[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11]]
[[12 13 14 15] [16 17 18 19] [20 21 22 23]]] Pure Inline: Traceback (most recent call last): File "array3d.py", line 105, in <module> main() File "array3d.py", line 98, in main pure_inline(arr) File "array3d.py", line 57, in pure_inline weave.inline(code, ['arr']) File "/Users/tom/Library/Python/2.6/site-packages/scipy/weave/inline_tools.py", line 324, in inline results = attempt_function_call(code,local_dict,global_dict) File "/Users/tom/Library/Python/2.6/site-packages/scipy/weave/inline_tools.py", line 392, in attempt_function_call function_list = function_catalog.get_functions(code,module_dir) File "/Users/tom/Library/Python/2.6/site-packages/scipy/weave/catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/Users/tom/Library/Python/2.6/site-packages/scipy/weave/catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/Users/tom/Library/Python/2.6/site-packages/scipy/io/dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
-------------------------------------------------------------------
On Mon, 2009-09-21 at 16:46 +0200, Emmanuel Lambert wrote:
Hi,
I compiled SciPy and Numpy on a machine with Scientific Linux.
We detected a problem with Weave and after investigation, it turns out that some of the unit tests delivered with Scipy-Weave also fail ! Below is a list of tests that fail in for example the "test_c_spec" file. They all raise a KeyError.
This is with SciPy 0.7.1 on Python 2.6. I also downloaded the latest Weave code again from the SVN repository, but the problem is not resolved.
Any idea on how to tackle this problem? There are no posts that help me further. I don't have this problem with the same standard scipy package that was is available for Ubuntu 9.04 (apparently the weave version number is the same).
It looks like the compilation works fine, see sample stdout also below.
What could cause this?
thanks for any help. Emmanuel
******************* SAMPLE OF STDOUT ******************
-------------------- >> begin captured stdout << --------------------- <weave: compiling> running build_ext running build_src building extension "sc_d133102ab45193e072f8dbb5a1f6848513" sources customize UnixCCompiler customize UnixCCompiler using build_ext customize UnixCCompiler customize UnixCCompiler using build_ext building 'sc_d133102ab45193e072f8dbb5a1f6848513' extension compiling C++ sources C compiler: g++ -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 - Wall -fPIC
compile options: '-I/user/home/gent/vsc401/vsc40157/scipy-runtime/ scipy/weave -I/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/ weave/scxx -I/user/home/gent/vsc401/vsc40157/numpy-runtime/numpy/core/ include -I/apps/gent/gengar/harpertown/software/Python/2.6.2- gimkl-0.5.0/include/python2.6 -c' g++: /user/home/gent/vsc401/vsc40157/.python26_compiled/ sc_d133102ab45193e072f8dbb5a1f6848513.cpp g++ -pthread -shared /tmp/vsc40157/python26_intermediate/ compiler_c1b5f1b73f1ce7d0c836cdad4c7c5ded/user/home/gent/vsc401/ vsc40157/.python26_compiled/sc_d133102ab45193e072f8dbb5a1f6848513.o / tmp/vsc40157/python26_intermediate/ compiler_c1b5f1b73f1ce7d0c836cdad4c7c5ded/user/home/gent/vsc401/ vsc40157/scipy-runtime/scipy/weave/scxx/weave_imp.o -o /user/home/gent/ vsc401/vsc40157/.python26_compiled/ sc_d133102ab45193e072f8dbb5a1f6848513.so running scons
--------------------- >> end captured stdout << ----------------------
********************** TESTS THAT FAIL ***********************
-bash-3.2$ python ./test_c_spec.py E..........EE.................EEEE......E..........EE.................EEEE.............. ====================================================================== ERROR: test_call_function (test_c_spec.CallableConverter) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 296, in test_call_function compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_file_to_py (test_c_spec.FileConverter) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 262, in test_file_to_py force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_py_to_file (test_c_spec.FileConverter) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 246, in test_py_to_file inline_tools.inline(code,['file'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_convert_to_dict (test_c_spec.SequenceConverter) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 305, in test_convert_to_dict inline_tools.inline("",['d'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_convert_to_list (test_c_spec.SequenceConverter) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 309, in test_convert_to_list inline_tools.inline("",['l'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_convert_to_string (test_c_spec.SequenceConverter) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 313, in test_convert_to_string inline_tools.inline("",['s'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_convert_to_tuple (test_c_spec.SequenceConverter) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 317, in test_convert_to_tuple inline_tools.inline("",['t'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_call_function (test_c_spec.TestCallableConverterUnix) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 296, in test_call_function compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_file_to_py (test_c_spec.TestFileConverterUnix) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 262, in test_file_to_py force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_py_to_file (test_c_spec.TestFileConverterUnix) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 246, in test_py_to_file inline_tools.inline(code,['file'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_convert_to_dict (test_c_spec.TestSequenceConverterUnix) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 305, in test_convert_to_dict inline_tools.inline("",['d'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_convert_to_list (test_c_spec.TestSequenceConverterUnix) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 309, in test_convert_to_list inline_tools.inline("",['l'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_convert_to_string (test_c_spec.TestSequenceConverterUnix) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 313, in test_convert_to_string inline_tools.inline("",['s'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
====================================================================== ERROR: test_convert_to_tuple (test_c_spec.TestSequenceConverterUnix) ---------------------------------------------------------------------- Traceback (most recent call last): File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ tests/test_c_spec.py", line 317, in test_convert_to_tuple inline_tools.inline("",['t'],compiler=self.compiler,force=1) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ inline_tools.py", line 301, in inline function_catalog.add_function(code,func,module_dir) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 648, in add_function self.cache[code] = self.get_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 615, in get_functions function_list = self.get_cataloged_functions(code) File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/weave/ catalog.py", line 529, in get_cataloged_functions if cat is not None and code in cat: File "/apps/gent/gengar/harpertown/software/Python/2.6.2-gimkl-0.5.0/ lib/python2.6/shelve.py", line 110, in __contains__ return key in self.dict File "/user/home/gent/vsc401/vsc40157/scipy-runtime/scipy/io/ dumbdbm_patched.py", line 73, in __getitem__ pos, siz = self._index[key] # may raise KeyError KeyError: 0
---------------------------------------------------------------------- Ran 88 tests in 32.581s
FAILED (errors=14)
participants (1)
-
Emmanuel Lambert