Ticket #3541 (closed defect: fixed)
Oracle Spatial Data gets corrupt
| Reported by: | sumit321 | Owned by: | aboudreault |
|---|---|---|---|
| Priority: | highest | Milestone: | |
| Component: | Input - Native Oracle Spatial Support | Version: | 5.6 |
| Severity: | critical | Keywords: | Oracle Spatial |
| Cc: | umn-ms@…, jimk |
Description
Bug is created using following configuration: Mapserver: 5.6.3 and 5.6.5 (C sharp mapscript) Oracle Spatial: 10.2.0.1.0 and 11g release 2 OS: Windows 7, vista and 2003 server.
Overview: If you call resultsGetShape it may update unique column when data source is Oracle Spatial. This behavior seems to be random and create duplicate value in unique column!
Following are steps to replicate bug: 1. Create one polygon layer in Oracle Spatial. 2. Add four features to it. 3. Execute following c sharp code
mapObj map = new mapObj("MyMap?"); layerObj TargetLayer? = map.getLayer(0); TargetLayer?.template = "dummy"; rectObj rect = TargetLayer?.getExtent(); if (TargetLayer?.queryByRect(TargetLayer?.map, rect) != (int)MS_RETURN_VALUE.MS_SUCCESS) {
return ;
} resultCacheObj resultTarget = TargetLayer?.getResults(); for (int resultCounterTarget = 0; resultCounterTarget < resultTarget.numresults; resultCounterTarget++) {
resultCacheMemberObj resultCacheMember = resultTarget.getResult(resultCounterTarget); shapeObj shapeTarget = new shapeObj((int)TargetLayer?.type);
//ERROR OCCURS AFTER FOLLOWING CODE LINE TargetLayer?.resultsGetShape(shapeTarget, resultCacheMember.shapeindex, resultCacheMember.tileindex); }
Further Analysis: When you call msOracleSpatialLayerResultGetShape, it tries to fetch item from oracle. When OCIAttrGet( (dvoid *)sthand->stmthp, (ub4)OCI_HTYPE_STMT,... (line 2289) is executed a record in Oracle Spatial is updated with duplicate entry. (Even if user don't have required privileges).
Attachments: Mapfile used to replicate bug. "Before" and "After" screen shots. Script to create table.
This ticket is with reference to following user forum thread. http://osgeo-org.1803224.n2.nabble.com/Problems-with-MapServer-and-Oracle-Spatial-td5518303.html#a5533884

