[mapserver-users] Re: msOracleSpatialLayerWhichShapes(): OracleSpatial error

umn-ms at hydrotec.de umn-ms at hydrotec.de
Wed May 26 23:59:36 PDT 2010


Some staring on maporaclespatial.c:
---------------------
There are two global static variables in maporaclestapital: 
static OCIType  *ordinates_tdo = NULL;
static OCIArray *ordinates;

But as far as I understood mapserver-code should be threadsave.
---------------------
In line 2011 ordinates is allocated with OCIObjectNew.
There's now corresponding OCIObjectFree.
Similar problem on allocation of ordinates_tdo?

---------------------
Actually I don't think, that this solves my current problem...

Benedikt

Jim Klassen <klassen.js at gmail.com> schrieb am 26.05.2010 16:38:00:

> Jim Klassen <klassen.js at gmail.com> 
> 26.05.2010 16:46
> 
> An
> 
> "umn-ms at hydrotec.de" <umn-ms at hydrotec.de>
> 
> Kopie
> 
> "mapserver-users at lists.osgeo.org" <mapserver-users at lists.osgeo.org>
> 
> Thema
> 
> Re: [mapserver-users] Re: msOracleSpatialLayerWhichShapes(): 
> OracleSpatial error
> 
> One thing that I find particularly strange about these errors 
> (ORA-0600) is that when you look them up they say "internal error - 
> call Oracle". So while MapServer is probably doing something 
> strange, the database is still failing in an unexpected way. I would
> expect it to return something from the OCI library or a more 
> specific db error like invalid handle or invalid statement or 
> something similar.
> 
> Jim K

> 
> 
> On May 26, 2010, at 6:22 AM, umn-ms at hydrotec.de wrote:

> Hi 
> 
> I'm facing similar/also strange problems. 
> 
> I use 
> * mapserver 5.6.3, 
> * Linux-Redhat  (Version ?) 
> * 64-Bit 
> * Oracle 11g on the DB-client 
> * Sun-Java 1.6 
> 
> When creating some maps with a selection I get: 
> java.lang.UnknownError: msOracleSpatialLayerWhichShapes(): 
> OracleSpatial error. Error: ORA-00600: Interner Fehlercode, 
> Argumente: [kokeaai5], [18], [2], [], [], [], [], [], [], [], [], [] 
>  . Query statement: SELECT GEWAESSER_ID, NAME, GEWAESSER_ID, 
> DARSTELLUNGSSTUFE, shape FROM (select WWI.GEWAESSER.NAME, 
> WWI.GEWAESSER.SHAPE, 
> WWI.GEWAESSER.GEWAESSER_ID,WWI.GEWAESSER.DARSTELLUNGSSTUFE FROM 
> WWI.GEWAESSER) WHERE SDO_FILTER( shape, MDSYS.SDO_GEOMETRY(2003, 
> :srid, NULL,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3),:ordinates 
> ),'querytype=window') = 'TRUE' . Check your data statement. 
>         at edu.umn.gis.mapscript.mapscriptJNI.layerObj_queryByRect
> (Native Method) 
>         at edu.umn.gis.mapscript.layerObj.queryByRect(layerObj.java:513) 

>         at de.hydrotec.ims.umn.MapMetaInfoImpl.configureSelection
> (MapMetaInfoImpl.java:216) 
> 
> * Problem occurs in most cases after making three selections 
> * Problem occurs on a 11g and a 10g databaseserver. 
> * What's *really* strange: A record in the queried table GEWAESSER 
> is corrupted! 
>    Even though the mapserver-user has no UPDATE-GRANTS. 
> * No problems with mapserver 5.4.2. (This is my fallback for the 
> current project...) 
> 
> Sorry for not being more specific. 
> But it's not easy to describe this strange behaviour. Never found 
> something like this. 
> 
> I saw, that maporaclespatial in the SVN-trunk has some important fixes. 
> 
> Question: 
> * Can I use the most current maporaclespatial from the trunk? Will 
> it be compatible with the rest of 
>    mapserver5.6.3? 
> * Is there any hope, that this may help? 
> 
> Benedikt 
> 
> mapserver-users-bounces at lists.osgeo.org schrieb am 26.05.2010 00:00:48:
> 
> > Agostino <acsviluppo at yahoo.it> 
> > Gesendet von: mapserver-users-bounces at lists.osgeo.org
> > 
> > 26.05.2010 00:01 
> > 
> > An 
> > 
> > mapserver-users at lists.osgeo.org 
> > 
> > Kopie 
> > 
> > Thema 
> > 
> > [mapserver-users] Re: msOracleSpatialLayerWhichShapes(): OracleSpatial 
error
> > 
> > 
> > Thank you Tamas. 
> > I think that the new 5.6 functions does not work properly with oracle
> > spatial. 
> > Also with the last build from http://vbkto.dyndns.org/sdk/ i have 
error.
> > 
> > The following code works:
> > layerObj lo = map.getLayer(i);
> > ...
> > res = lo.queryByAttributes(map, null, strQuery.ToString(),
> > mapscript.MS_MULTIPLE);
> > ...
> > resultCacheObj results = lo.getResults();
> > int numres = results.numresults;
> > for (int j = 0; j < numres; j++)
> > {
> >     int shapeInd = results.getResult(j).shapeindex;
> >     shapeObj shp = lo.getFeature(shapeInd, -1);
> >     layerObj loSel = GetSelectionLayer(map, lo.type);
> >     shp.draw(map, loSel, img);
> > }
> > 
> > but if i write this using new functions:
> > 
> > layerObj lo = map.getLayer(i);
> > ...
> > res = lo.queryByAttributes(map, null, strQuery.ToString(),
> > mapscript.MS_MULTIPLE);
> > ...
> > int numres = lo.getNumResults();
> > for (int j = 0; j < numres; j++)
> > {
> >     resultCacheMemberObj reso = lo.getResult(j);
> >     shapeObj shp = new shapeObj((int)lo.type);
> >     lo.resultsGetShape(shp, reso.shapeindex, reso.tileindex);
> >     layerObj loSel = GetSelectionLayer(map, lo.type);
> >     shp.draw(map, loSel, img);
> > }
> > 
> > i have the exception 
> > msOracleSpatialLayerWhichShapes(): OracleSpatial error. Error: 
ORA-00600: 
> > codice di errore interno, argomenti: [17182], [0x2581CE802], [], 
> [], [], [], 
> > [], [] 
> > after call drawmap().
> > 
> > Agostino.
> > -- 
> > View this message in context: http://osgeo-org.
> > 1803224.n2.nabble.com/msOracleSpatialLayerWhichShapes-OracleSpatial-
> > error-tp5048929p5100718.html
> > Sent from the Mapserver - User mailing list archive at Nabble.com.
> > _______________________________________________
> > mapserver-users mailing list
> > mapserver-users at lists.osgeo.org
> > http://lists.osgeo.org/mailman/listinfo/mapserver-users
> _______________________________________________
> mapserver-users mailing list
> mapserver-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapserver-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20100527/6d09216f/attachment.htm>


More information about the MapServer-users mailing list