32 Bit wide Shapeindex

Fernando Simon fsimon at UNIVALI.BR
Tue Feb 20 22:09:11 EST 2007


Hi Torsten Weber,
    This issue that you related already affected some Oracle users.
    The problem start when the ID column (UNIQUE in Oracle Spatial
driver) contains more than 10 digits, as you point the problem is in
shapeindex attribute (from shapeobj) in the UMN Mapserver core.
    Actually exists some ways to solve this issue with query's (just the
query mode's are affected, draw work perfectly), the solution that I use
here is create a sequence, inside a trigger, that increase and store the
value in a column used in the UNIQUE parameter in UMN Mapserver.
    I believe that a base 64 value is the best way to solve it, some
changes in the UMN Mapserver core library and for Oracle Spatial driver,
I hope that other parts of the code don't need to change, but is a very
good improvement for all.
    We can start to check the details about it and purpose a RFC.
    Best regards.

-------------------------------------------------------------------
Fernando Simon
UMN Mapserver and Oracle Spatial developer
-------------------------------------------------------------------

Torsten Weber wrote:
> Hi list members,
>
> don't know if this problem is adressed right but hopefully it is.
>
> We run up on a little problem while getting data from an oracle database.
> The Problem occured by getting attribute data for some Objects (querying). 
> Rendering works fine.
>
> Environment:
> SuSE Linux 10.2 AMD64
> Mapserver 4.10.0 (php) (Patch described by Benedikt Rothe in Bug #1961 
> allready applied)
> Oracle XE
> Mapfile with about 120 Layers (mostly oracle)
>
> While tracking down the problem we found, that the indices used to identify 
> the shapes in our database run out of the 32 bit boundary but the mapserver 
> uses a long variable to store the shapeindex.
>
> We have less than 2^32 datasets (shapes) but the id is build by an other 
> application and there is no way to us to control the machanism.
>
> At first we would add an additional sequence column to the concerned tables to 
> get a workaround.
>
> This problem isn't limited to oracle and/or php but we don't know if other 
> users are affected by this.
> But we think it could be meaningfull to add 64 bit capabiliies (specially for 
> shapeindices) to mapserver.
>
> Best regards
>
> Torsten Weber
>
>   



More information about the mapserver-dev mailing list