Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

glibc error in tst_compoundvar #35

Closed
dopplershift opened this issue Feb 26, 2014 · 9 comments
Closed

glibc error in tst_compoundvar #35

dopplershift opened this issue Feb 26, 2014 · 9 comments

Comments

@dopplershift
Copy link
Member

From david.huard on February 08, 2010 09:08:06

tst_compoundvar crashes on Ubuntu 9.10 with

netcdf 4.0.1
hdf5 1.8.4
numpy 1.5.0.dev8079

Here is the backtrace, I can't make sense of any of it.
#0 0x00e2c5a6 in ?? () from /lib/tls/i686/cmov/libc.so.6
#1 0x00e2f7cd in free () from /lib/tls/i686/cmov/libc.so.6
#2 0x003498b1 in array_dealloc (self=0x867e670) at

numpy/core/src/multiarray/arrayobject.c:209
#3 0x003498fc in array_dealloc (self=0x8632010) at

numpy/core/src/multiarray/arrayobject.c:196
#4 0x0815eaba in frame_dealloc (f=0x85df994) at ../Objects/frameobject.c:420
#5 0x08101384 in tb_dealloc (tb=0x858293c) at ../Python/traceback.c:28
#6 0x08101394 in tb_dealloc (tb=0x85826bc) at ../Python/traceback.c:27
#7 0x0808e821 in PyDict_DelItem (op=0xb7fbbb54, key=0x85828b8) at

../Objects/dictobject.c:755
#8 0x0808e88c in PyDict_DelItemString (v=0xb7fbbb54, key=0x8215bdd

"exc_traceback")
at ../Objects/dictobject.c:2314
#9 0x080d8554 in reset_exc_info (f=0x85c4854, throwflag=0) at

../Python/ceval.c:3123
#10 PyEval_EvalFrameEx (f=0x85c4854, throwflag=0) at ../Python/ceval.c:2718
#11 0x080dddf2 in PyEval_EvalCodeEx (co=0xb7f94cc8, globals=0xb7f9157c,

locals=0x0, args=0x8584238,
argcount=2, kws=0x84c9390, kwcount=0, defs=0xb7ee1c18, defcount=1,
closure=0x0)
at ../Python/ceval.c:2968
#12 0x0816022f in function_call (func=0xb7ee472c, arg=0x858422c, kw=0x8581a44)

at ../Objects/funcobject.c:524

#13 0x0806120a in PyObject_Call (func=0xb7ee472c, arg=0x858422c, kw=0x8581a44)

at ../Objects/abstract.c:2492

#14 0x080daf19 in ext_do_call (f=0x85c46ec, throwflag=0) at

../Python/ceval.c:4019
#15 PyEval_EvalFrameEx (f=0x85c46ec, throwflag=0) at ../Python/ceval.c:2429
#16 0x080dddf2 in PyEval_EvalCodeEx (co=0xb7f94d10, globals=0xb7f9157c,

locals=0x0, args=0x85841f8,
argcount=2, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at
../Python/ceval.c:2968
#17 0x0816014c in function_call (func=0xb7ee4764, arg=0x85841ec, kw=0x0) at

../Objects/funcobject.c:524
#18 0x0806120a in PyObject_Call (func=0xb7ee4764, arg=0x85841ec, kw=0x0) at

../Objects/abstract.c:2492
#19 0x080684ac in instancemethod_call (func=0x858234c, arg=0x85841ec, kw=0x0)

at ../Objects/classobject.c:2579

#20 0x0806120a in PyObject_Call (func=0x858234c, arg=0x85841cc, kw=0x0) at

../Objects/abstract.c:2492
#21 0x080aedd7 in slot_tp_call (self=0x858410c, args=0x85841cc, kwds=0x0)

at ../Objects/typeobject.c:5378

#22 0x0806120a in PyObject_Call (func=0x858410c, arg=0x85841cc, kw=0x0) at

../Objects/abstract.c:2492
#23 0x080dbc3c in do_call (f=0x85c4584, throwflag=0) at ../Python/ceval.c:3924
#24 call_function (f=0x85c4584, throwflag=0) at ../Python/ceval.c:3729
#25 PyEval_EvalFrameEx (f=0x85c4584, throwflag=0) at ../Python/ceval.c:2389
#26 0x080dddf2 in PyEval_EvalCodeEx (co=0xb7fa04e8, globals=0xb7f9157c,

locals=0x0, args=0x857e758,
argcount=2, kws=0x84c9380, kwcount=0, defs=0x0, defcount=0,
closure=0x0) at ../Python/ceval.c:2968
#27 0x0816022f in function_call (func=0xb7ee4b8c, arg=0x857e74c, kw=0x85819bc)

at ../Objects/funcobject.c:524

#28 0x0806120a in PyObject_Call (func=0xb7ee4b8c, arg=0x857e74c, kw=0x85819bc)

at ../Objects/abstract.c:2492

#29 0x080daf19 in ext_do_call (f=0x85c441c, throwflag=0) at

../Python/ceval.c:4019
#30 PyEval_EvalFrameEx (f=0x85c441c, throwflag=0) at ../Python/ceval.c:2429
#31 0x080dddf2 in PyEval_EvalCodeEx (co=0xb7fa0530, globals=0xb7f9157c,

locals=0x0, args=0x8584138,
argcount=2, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at
../Python/ceval.c:2968
#32 0x0816014c in function_call (func=0xb7ee4bc4, arg=0x858412c, kw=0x0) at

../Objects/funcobject.c:524
#33 0x0806120a in PyObject_Call (func=0xb7ee4bc4, arg=0x858412c, kw=0x0) at

../Objects/abstract.c:2492
---Type to continue, or q to quit---
#34 0x080684ac in instancemethod_call (func=0x857df7c, arg=0x858412c, kw=0x0)

at ../Objects/classobject.c:2579

#35 0x0806120a in PyObject_Call (func=0x857df7c, arg=0x858408c, kw=0x0) at

../Objects/abstract.c:2492
#36 0x080aedd7 in slot_tp_call (self=0x85840ec, args=0x858408c, kwds=0x0)

at ../Objects/typeobject.c:5378

#37 0x0806120a in PyObject_Call (func=0x85840ec, arg=0x858408c, kw=0x0) at

../Objects/abstract.c:2492
#38 0x080dbc3c in do_call (f=0x85c42b4, throwflag=0) at ../Python/ceval.c:3924
#39 call_function (f=0x85c42b4, throwflag=0) at ../Python/ceval.c:3729
#40 PyEval_EvalFrameEx (f=0x85c42b4, throwflag=0) at ../Python/ceval.c:2389
#41 0x080dddf2 in PyEval_EvalCodeEx (co=0xb7fa04e8, globals=0xb7f9157c,

locals=0x0, args=0x857e878,
argcount=2, kws=0x82f12f0, kwcount=0, defs=0x0, defcount=0,
closure=0x0) at ../Python/ceval.c:2968
#42 0x0816022f in function_call (func=0xb7ee4b8c, arg=0x857e86c, kw=0x8581934)

at ../Objects/funcobject.c:524

#43 0x0806120a in PyObject_Call (func=0xb7ee4b8c, arg=0x857e86c, kw=0x8581934)

at ../Objects/abstract.c:2492

#44 0x080daf19 in ext_do_call (f=0x85c414c, throwflag=0) at

../Python/ceval.c:4019
#45 PyEval_EvalFrameEx (f=0x85c414c, throwflag=0) at ../Python/ceval.c:2429
#46 0x080dddf2 in PyEval_EvalCodeEx (co=0xb7fa0530, globals=0xb7f9157c,

locals=0x0, args=0x857e958,
argcount=2, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at
../Python/ceval.c:2968
#47 0x0816014c in function_call (func=0xb7ee4bc4, arg=0x857e94c, kw=0x0) at

../Objects/funcobject.c:524
#48 0x0806120a in PyObject_Call (func=0xb7ee4bc4, arg=0x857e94c, kw=0x0) at

../Objects/abstract.c:2492
#49 0x080684ac in instancemethod_call (func=0x857df54, arg=0x857e94c, kw=0x0)

at ../Objects/classobject.c:2579

#50 0x0806120a in PyObject_Call (func=0x857df54, arg=0x857edcc, kw=0x0) at

../Objects/abstract.c:2492
#51 0x080aedd7 in slot_tp_call (self=0x857efec, args=0x857edcc, kwds=0x0)

at ../Objects/typeobject.c:5378

#52 0x0806120a in PyObject_Call (func=0x857efec, arg=0x857edcc, kw=0x0) at

../Objects/abstract.c:2492
#53 0x080dbc3c in do_call (f=0x85c3a1c, throwflag=0) at ../Python/ceval.c:3924
#54 call_function (f=0x85c3a1c, throwflag=0) at ../Python/ceval.c:3729
#55 PyEval_EvalFrameEx (f=0x85c3a1c, throwflag=0) at ../Python/ceval.c:2389
#56 0x080dd384 in fast_function (f=0x85c38ac, throwflag=0) at

../Python/ceval.c:3792
#57 call_function (f=0x85c38ac, throwflag=0) at ../Python/ceval.c:3727
#58 PyEval_EvalFrameEx (f=0x85c38ac, throwflag=0) at ../Python/ceval.c:2389
#59 0x080dd384 in fast_function (f=0x85c0a6c, throwflag=0) at

../Python/ceval.c:3792
#60 call_function (f=0x85c0a6c, throwflag=0) at ../Python/ceval.c:3727
#61 PyEval_EvalFrameEx (f=0x85c0a6c, throwflag=0) at ../Python/ceval.c:2389
#62 0x080dddf2 in PyEval_EvalCodeEx (co=0xb7ee03c8, globals=0xb7f9157c,

locals=0x0, args=0x857ec98,
argcount=1, kws=0x0, kwcount=0, defs=0xb7ee3158, defcount=5,
closure=0x0) at ../Python/ceval.c:2968
#63 0x0816014c in function_call (func=0xb7ee53e4, arg=0x857ec8c, kw=0x0) at

../Objects/funcobject.c:524
#64 0x0806120a in Py...

Original issue: http://code.google.com/p/netcdf4-python/issues/detail?id=35

@dopplershift
Copy link
Member Author

From whitaker.jeffrey@gmail.com on February 08, 2010 08:13:23

David: You need netcdf-4.1 for the compound variable stuff to work. I doubt that will
fix the crash though, seems like the backtrace emanates from numpy.

-Jeff

@dopplershift
Copy link
Member Author

From david.huard on February 08, 2010 13:09:20

I created a function _netcdf_version in r840 that checks the version number of the
netcdf library. It works on *nix, but I need to check it on windows.

The version number is checked before running tst_compoundvar.

Status: Started

@dopplershift
Copy link
Member Author

From whitaker.jeffrey@gmail.com on February 08, 2010 15:08:16

David: There was already a function that does this in utils.pyx

def getlibversion():
"""
getlibversion()

returns a string describing the version of the netcdf library
used to build the module, and when it was built.
"""
cdef char *libstring
libstring = nc_inq_libvers()
return PyString_FromString(libstring)

It calls the C lib, and doesn't rely on nc-config, so it should work on windows.

I'm happy to just require 4.1 anyway, since 4.0.1 is so buggy.

-Jeff

@dopplershift
Copy link
Member Author

From cjgoh...@gmail.com on February 08, 2010 17:28:37

The addition of the _netcdf_version function breaks testing on Windows. Nc-config is
a Unix shell script.

python run_all.py

Traceback (most recent call last):
File "run_all.py", line 15, in
version = netCDF4._netcdf_version()
File "X:\Python26\lib\site-packages\netCDF4_utils.py", line 10, in _netcdf_version
output = subprocess.Popen(["nc-config", "--version"],
stdout=subprocess.PIPE).communicate()[0]
File "X:\Python26\lib\subprocess.py", line 621, in init
errread, errwrite)
File "X:\Python26\lib\subprocess.py", line 830, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

@dopplershift
Copy link
Member Author

From whitaker.jeffrey@gmail.com on February 08, 2010 19:09:58

I modified tst_compoundvar.py to use getlibversion, so it should now work on windows.

@dopplershift
Copy link
Member Author

From david.huard on March 29, 2010 07:26:43

I removed the _netcdf4_version function and regenerated the .c files in r862 . Do you
want to raise an error at import if version < 4.1 ?

@dopplershift
Copy link
Member Author

From whitaker.jeffrey@gmail.com on March 29, 2010 08:25:04

When netcdf 4.1 is released, I think we probably should. We might also modify setup.py to check for hdf5 >
1.8.4-patch1.

@dopplershift
Copy link
Member Author

From whitaker.jeffrey@gmail.com on March 30, 2010 09:12:20

In svn trunk an ImportError is now raised if the netcdf-4 lib version < 4.1.1 and hdf5 <= 1.8.4.

@dopplershift
Copy link
Member Author

From whitaker.jeffrey@gmail.com on February 25, 2014 18:04:09

Status: Fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant