[mapserver-dev] python-mapscript: generateSLD() segfaults

Stephan Holl stephan.holl at intevation.de
Fri Mar 6 03:57:21 EST 2009


Hello Assefa,

Stephan Holl <stephan.holl at intevation.de>, [20090306 - 09:22:10]

> Hello Assefa,
> 
> Yewondwossen Assefa <yassefa at dmsolutions.ca>, [20090305 - 16:45:20]
> 
> > Stephan,
> > 
> >   I have added a bug and fix
> > (http://trac.osgeo.org/mapserver/ticket/2915). If possible, give it
> > a try and let me know.
> 
> thanks for your fast reply and the proposed fix. I will give it a try
> as soon as my admin will install the needed swig-stuff on the maschine
> and report back.

OK, compiled, but it still segfaults later on (layer

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7faa6c0 (LWP 27626)]
0x00810069 in FLTArraysAnd ()
from /home/gis2/intevation/wms-migration/apps/lib/python2.4/site-packages/_mapscript.so
(gdb) bt #0  0x00810069 in FLTArraysAnd ()
from /home/gis2/intevation/wms-migration/apps/lib/python2.4/site-packages/_mapscript.so
Cannot access memory at address 0x6666666a

Also, the resulting SLDs are invalid, since the have the Tag NamedLayer
doubled now:
[gis2 at gis2 wms-migration]$ grep -irn NamedLayer slds/*|head -9
slds/Amt_10132_Grenzen_Kompakt.sld:2:<NamedLayer>
slds/Amt_10132_Grenzen_Kompakt.sld:3:<NamedLayer>
slds/Amt_10132_Grenzen_Kompakt.sld:28:</NamedLayer>
slds/Amt_Beschriftung.sld:2:<NamedLayer>
slds/Amt_Beschriftung.sld:3:<NamedLayer>
slds/Amt_Beschriftung.sld:29:</NamedLayer>
slds/Amt_Kompakt_Beschriftung.sld:2:<NamedLayer>
slds/Amt_Kompakt_Beschriftung.sld:3:<NamedLayer>
slds/Amt_Kompakt_Beschriftung.sld:30:</NamedLayer>

xmllint complains now.

Could you look into this again please?

Best
	Stephan

> > Stephan Holl wrote:
> > > Dear mapServer-devs,
> > > 
> > > using Python-mapscript to write out SLDs for my layers I found
> > > out, that some layers did not write an SLD and my script dies
> > > with a segfault.
> > > 
> > > Using GDB I get this information from bt:
> > > 
> > > Program received signal SIGSEGV, Segmentation fault.
> > > [Switching to Thread 0xb7fd36c0 (LWP 14112)]
> > > 0x00769878 in msStringConcatenate at plt ()
> > > from /home/gis2/intevation/wms-migration/apps/lib/python2.4/site-packages/_mapscript.so
> > > (gdb) bt #0  0x00769878 in msStringConcatenate at plt ()
> > > from /home/gis2/intevation/wms-migration/apps/lib/python2.4/site-packages/_mapscript.so
> > > #1  0x0083b7e6 in msSLDGenerateSLD ()
> > > from /home/gis2/intevation/wms-migration/apps/lib/python2.4/site-packages/_mapscript.so
> > > #2  0x007b141d in _wrap_layerObj_generateSLD (self=0x0,
> > > args=0xb7f680ec) at mapscript_wrap.c:3717 #3  0x4f02645d in
> > > PyCFunction_Call () from /usr/lib/libpython2.4.so.1.0 #4
> > > 0x4effbd57 in PyObject_Call () from /usr/lib/libpython2.4.so.1.0
> > > #5  0x4f05f1bc in PyEval_EvalFrame ()
> > > from /usr/lib/libpython2.4.so.1.0 #6  0x4f061c68 in
> > > PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 #7
> > > 0x4f060426 in PyEval_EvalFrame ()
> > > from /usr/lib/libpython2.4.so.1.0 #8  0x4f061c68 in
> > > PyEval_EvalCodeEx () from /usr/lib/libpython2.4.so.1.0 #9
> > > 0x4f061cf3 in PyEval_EvalCode ()
> > > from /usr/lib/libpython2.4.so.1.0 #10 0x4f07e998 in ?? ()
> > > from /usr/lib/libpython2.4.so.1.0 #11 0x4f0800a8 in
> > > PyRun_SimpleFileExFlags () from /usr/lib/libpython2.4.so.1.0 #12
> > > 0x4f08078a in PyRun_AnyFileExFlags ()
> > > from /usr/lib/libpython2.4.so.1.0 #13 0x4f087185 in Py_Main ()
> > > from /usr/lib/libpython2.4.so.1.0 #14 0x08048582 in main ()
> > > 
> > > bt full gives this:
> > > (gdb) bt full
> > > #0  0x00769878 in msStringConcatenate at plt ()
> > > from /home/gis2/intevation/wms-migration/apps/lib/python2.4/site-packages/_mapscript.so
> > > No symbol table info available. #1  0x0083b7e6 in msSLDGenerateSLD
> > > ()
> > > from /home/gis2/intevation/wms-migration/apps/lib/python2.4/site-packages/_mapscript.so
> > > No symbol table info available. #2  0x007b141d in
> > > _wrap_layerObj_generateSLD (self=0x0, args=0xb7f680ec) at
> > > mapscript_wrap.c:3717 resultobj = (PyObject *) 0x0 arg1 = <value
> > > optimized out> result = <value optimized out> argp1 = (void *)
> > > 0x94f5230 res1 = <value optimized out>
> > >         obj0 = (PyObject *) 0xb7ce764c
> > > #3  0x4f02645d in PyCFunction_Call ()
> > > from /usr/lib/libpython2.4.so.1.0
> > > 
> > > I am using MS 5.2.1 and python 2.4.3
> > > 
> > > The Layer it dies has 26 classes with Expressions like this:
> > > EXPRESSION "EH        "
> > > 
> > > All this is on Oracle Spatial though.
> > > 
> > > Perhaps someone can give me a hint?
> > > 
> > > 	Stephan
> > > 
> > > 
> > > 
> > > ------------------------------------------------------------------------
> > > 
> > > _______________________________________________
> > > mapserver-dev mailing list
> > > mapserver-dev at lists.osgeo.org
> > > http://lists.osgeo.org/mailman/listinfo/mapserver-dev
> > 
> > 
> 
> 


-- 
Stephan Holl <stephan.holl at intevation.de> | Tel.: +49 (0)541-33 508 3663
Intevation GmbH, Neuer Graben 17, 49074 OS  |  AG Osnabrück - HR B 18998
Geschäftsführer:  Frank Koormann, Bernhard Reiter, Dr. Jan-Oliver Wagner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 206 bytes
Desc: not available
Url : http://lists.osgeo.org/pipermail/mapserver-dev/attachments/20090306/cc257958/signature-0001.bin


More information about the mapserver-dev mailing list