[lxml-dev] trunk schematron tests core dump (was: annotate, pyannotate, xsiannotate)
jholg at gmx.de
jholg at gmx.de
Fri Sep 21 16:29:05 CEST 2007
Hi,
> > Schematron uses XPath a lot, so I wouldn't be surprised if this was
> > related to
> > the XPath bug in libxml2 2.6.27. Is there any chance you could switch to
> > 2.6.28 or later? Note that lxml.etree (trunk) now emits a warning if you
> > use
> > XPath on 2.6.27, as we can't really work around it. It happens when you
> > get
> > certain errors in the XPath evaluation, as in the case above.
>
> I'll try out the latest libxml2, I had also noted the warning.
Unfortunately, using the latest & greatest libxml2/libxslt (2.6.33/1.1.22) doesn't solve the problem for me.
Btw I won't come near a Solaris box for the next week, and probably not be reachable by mail, so unfortunately I will only be able to provide more info then. Have a nice week, everybody!
Holger
Here's what I see:
Something strange (a cython bug?):
#6 0xfe60fee0 in __pyx_f_5etree_10Schematron___init__ (__pyx_v_self=0x8c7c50,
__pyx_args=0x887700, __pyx_kwds=0x109b04) at src/lxml/etree.c:4905
But when I look at etree.c in line 4905 this is nowhere near __pyx_f_5etree_10Schematron___init__:
etree.c:
========
[...]
70188
70189 static int __pyx_f_5etree_10Schematron___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
70190 static int __pyx_f_5etree_10Schematron___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
70191 PyObject *__pyx_v_etree = 0;
70192 PyObject *__pyx_v_file = 0;
[...]
Test & backtrace
================
/apps/pydev/bin/python2.4 setup.py build_ext -i
Building with Cython.
Building lxml version 2.0.alpha2-46776
running build_ext
/apps/pydev/bin/python2.4 test.py -p -v
TESTED VERSION: 2.0.alpha2-46776
Python: (2, 4, 4, 'final', 0)
lxml.etree: (2, 0, -198, 46776)
libxml used: (2, 6, 30)
libxml compiled: (2, 6, 30)
libxslt used: (1, 1, 22)
libxslt compiled: (1, 1, 22)
111/810 ( 13.7%): Doctest: validation.txt /Total line 1: Sum is not 100%.
/Total line 1: Sum is not 100%.
671/810 ( 82.8%): Doctest: validation.txt /Total line 1: Sum is not 100%.
/Total line 1: Sum is not 100%.
690/810 ( 85.2%): test_schematron (lxml.tests.test_schematron.ETreeSchematronTestCase)/AAA line
1: There is an extra element
693/810 ( 85.6%): test_schematron_invalid_schema_empty (...schematron.ETreeSchematronTestCase)make: *** [test_inplace] Segmentation Fault (core dumped)
2 lb54320 at adevp02 .../lxml $ gdb python2.4 -c core
GNU gdb 4.18
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.6"...
Core was generated by `/apps/pydev/bin/python2.4 test.py -p -v'.
Program terminated with signal 9, Killed.
Reading symbols from /usr/lib/libresolv.so.2...done.
Reading symbols from /usr/lib/libsocket.so.1...done.
Reading symbols from /usr/lib/libnsl.so.1...done.
Reading symbols from /usr/lib/librt.so.1...done.
Reading symbols from /usr/lib/libdl.so.1...done.
Reading symbols from /usr/lib/libpthread.so.1...done.
Reading symbols from /usr/lib/libm.so.1...done.
Reading symbols from /usr/lib/libc.so.1...done.
Reading symbols from /usr/lib/libmp.so.2...done.
Reading symbols from /usr/lib/libaio.so.1...done.
Reading symbols from /usr/platform/SUNW,Sun-Fire-V440/lib/libc_psr.so.1...done.
Reading symbols from /usr/lib/libthread.so.1...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/time.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/itertools.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/_curses.so...done.
Reading symbols from /apps/prod/lib/libncurses.so.5...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/collections.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/strop.so...done.
Reading symbols from /data/pydev/hjoukl/LXML/lxml/src/lxml/etree.so...done.
Reading symbols from /apps/pydev/lib/libxslt.so.1...done.
Reading symbols from /apps/pydev/lib/libexslt.so.0...done.
Reading symbols from /apps/pydev/lib/libxml2.so.2...done.
Reading symbols from /apps/prod/lib/libz.so...done.
Reading symbols from /apps/prod//lib/libiconv.so.2...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/_bisect.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/_heapq.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/cStringIO.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/math.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/binascii.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/_random.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/fcntl.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/_socket.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/_ssl.so...done.
Reading symbols from /apps/local/lib/libssl.so.0.9.6...done.
Reading symbols from /apps/local/lib/libcrypto.so.0.9.6...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/operator.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/struct.so...done.
---Type <return> to continue, or q <return> to quit---
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/md5.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/sha.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/datetime.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/zlib.so...done.
Reading symbols from /data/pydev/hjoukl/LXML/lxml/src/lxml/objectify.so...done.
Reading symbols from /data/pydev/hjoukl/LXML/lxml/src/lxml/pyclasslookup.so...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/_locale.so...done.
Reading symbols from /apps/local/lib/libintl.so.1...done.
Reading symbols from /apps/pydev/lib/python2.4/lib-dynload/readline.so...done.
Reading symbols from /apps/prod/lib/libreadline.so...done.
#0 0xff0b3218 in strlen () from /usr/lib/libc.so.1
(gdb) bt
#0 0xff0b3218 in strlen () from /usr/lib/libc.so.1
#1 0xff106530 in _doprnt () from /usr/lib/libc.so.1
#2 0xff108730 in vsnprintf () from /usr/lib/libc.so.1
#3 0xfe2b7afc in __xmlRaiseError () from /apps/pydev/lib/libxml2.so.2
#4 0xfe461e2c in xmlSchematronPErr () from /apps/pydev/lib/libxml2.so.2
#5 0xfe4648b4 in xmlSchematronParse () from /apps/pydev/lib/libxml2.so.2
#6 0xfe60fee0 in __pyx_f_5etree_10Schematron___init__ (__pyx_v_self=0x8c7c50,
__pyx_args=0x887700, __pyx_kwds=0x109b04) at src/lxml/etree.c:4905
#7 0x58504 in type_call (type=0xfe666d80, args=0x824f30, kwds=0x89c810)
at Objects/typeobject.c:443
#8 0x260c4 in PyObject_Call (func=0x8c7c50, arg=0x824f30, kw=0x89c810)
at Objects/abstract.c:1802
#9 0x88f4c in ext_do_call (func=0xfe666d80, pp_stack=0xffbed5ec, flags=3, na=-1, nk=0)
at Python/ceval.c:3848
#10 0x85af8 in PyEval_EvalFrame (f=0x1803d0) at Python/ceval.c:2214
#11 0x86eb8 in PyEval_EvalCodeEx (co=0x1be460, globals=0x0, locals=0x1803d0, args=0x88496c,
argcount=4, kws=0x88497c, kwcount=0, defs=0x0, defcount=0, closure=0x0)
at Python/ceval.c:2752
#12 0x88888 in update_keyword_args (orig_kwdict=0x0, nk=-4270016, pp_stack=0x4, func=0x4)
at Python/ceval.c:3676
#13 0x886b0 in call_function (pp_stack=0xffbed840, oparg=4) at Python/ceval.c:3597
#14 0x85a00 in PyEval_EvalFrame (f=0x884818) at Python/ceval.c:2186
#15 0x887fc in fast_function (func=0x6d4770, pp_stack=0x77ef28, n=1, na=1, nk=1240904)
at Python/ceval.c:3654
#16 0x886b0 in call_function (pp_stack=0xffbeda08, oparg=1) at Python/ceval.c:3597
#17 0x85a00 in PyEval_EvalFrame (f=0x77edc8) at Python/ceval.c:2186
#18 0x86eb8 in PyEval_EvalCodeEx (co=0x1be260, globals=0x0, locals=0x77edc8, args=0x98b834,
argcount=2, kws=0x2f4370, kwcount=0, defs=0x1c067c, defcount=1, closure=0x0)
at Python/ceval.c:2752
#19 0xdadd4 in PyFunction_GetCode (op=0x1c8a30) at Objects/funcobject.c:66
#20 0x260c4 in PyObject_Call (func=0x1c8a30, arg=0x98b828, kw=0x8c1150)
at Objects/abstract.c:1802
#21 0x88f4c in ext_do_call (func=0x1c8a30, pp_stack=0xffbedca4, flags=3, na=-1, nk=0)
at Python/ceval.c:3848
#22 0x85af8 in PyEval_EvalFrame (f=0x48eb78) at Python/ceval.c:2214
#23 0x86eb8 in PyEval_EvalCodeEx (co=0x1be2a0, globals=0x0, locals=0x48eb78, args=0x973f3c,
argcount=2, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2752
#24 0xdadd4 in PyFunction_GetCode (op=0x1c8a70) at Objects/funcobject.c:66
#25 0x260c4 in PyObject_Call (func=0x1c8a70, arg=0x973f30, kw=0x0) at Objects/abstract.c:1802
#26 0x2e30c in instancemethod_descr_get (meth=0x1, obj=0x973f30, cls=0x0)
at Objects/classobject.c:2539
#27 0x260c4 in PyObject_Call (func=0x1c8a70, arg=0x973f30, kw=0x0) at Objects/abstract.c:1802
#28 0x638b8 in slot_tp_call (self=0x6ced10, args=0x25e470, kwds=0x0)
at Objects/typeobject.c:4549
#29 0x260c4 in PyObject_Call (func=0x6ced10, arg=0x25e470, kw=0x0) at Objects/abstract.c:1802
#30 0x8a8e0 in do_call (func=0x6ced10, pp_stack=0xffbee3a8, na=-1, nk=2483312)-
--
Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer
More information about the lxml-dev
mailing list