Opened 19 years ago

Closed 19 years ago

#1136 closed defect (fixed)

Generating query map fails

Reported by: silke@… Owned by: fsimon@…
Priority: high Milestone:
Component: Input - Native Oracle Spatial Support Version: 4.4
Severity: normal Keywords:
Cc:

Description

Using the native ora support I don't get a correct query map. Using the OGR
connection I get a mapext of
3377131.909825 5723253.773325 3377543.643175 5723665.506675
while the mapext with native ora support is
-53.969555 -53.969555 51.969555 51.969555
which is obviously wrong. Image points are 300.0 250.0

Perhaps this error is even correlated to bug 1110 and 1109.
Please let me know if you need any further information. I don't know exactly
which information is really needed.

Thanks for any help,

         Silke

Change History (9)

comment:1 by fsimon@…, 19 years ago

Hi,
   How did you defined your layer? I don't change the extent in the
maporaclespatial.c, I use the extent that the mapserv core passes.
   Thanks.

comment:2 by fsimon@…, 19 years ago

Ok,
    I didn't implemented the getextent function for Oracle Spatial, I want to
release this function for the next version (4.4.x or 4.6).
    Thanks.

comment:3 by silke@…, 19 years ago

Thanks for your information. So, this 'bug' depends on bug 1112, am I right?

Do you have any schedule when the implementation of the getextent function will
be ready? Could we possibly help with some implementation to accelerate the process?

comment:4 by fsimon@…, 19 years ago

Hi,
    Thanks for the help, but the problem isn't with the implementation, the
problem is with Oracle function and versions. Don't exist any function for all
versions (8i, 9i 10g) that permit get extent from a geometry. 
    Exist aggr function for get extent, but this function exist only for 9 and
newest versions.
    Another problem is taht I can't query geom meta data table becouse some
query's is functions like SDO_BUFFER, this functions don't have any geom
metadate, so sounds like impossible use metada table.
    I don't want forget the support for 8i users, many users use this version
yet. I already did one sql that return the extent, I'm testing the time and
performance for this sql.
    Any hints?
    Thanks for the help.

comment:5 by silke@…, 19 years ago

Hi Fernando,

I am not especially familar with Oracle Spatiel 8.i but if I have a look on the
available function I think that SDO_TUNE.EXTENT_OF could do what you want - you
will first have to create a select command to get the right geometry and pass
the result the this function. I don't know though wether it is possible to
create temporary layers in an easy an performant way.

If your solution is not performant it could be a solution to provide two
implementation to get the extent of an object - one by using the aggr. function
coming from oracle and the other, using your query when this function is not
available (i.e. when oracle 8.i is used). 

Nevertheless, it would be great if you could just state wether you have a time
schedule or not. It's just to know wether it is OK for us to wait for your
implementation or wether we will have to use a workaround by using the ogr
connection for special cirumstances. This would mean to do it without the great
performance of your implementation each time a query map is needed.

comment:6 by fsimon@…, 19 years ago

Hi,
    Yes the EXTENT_OF function can be one good way, I tested this function but 
the problem appear when the data is a spatial function (like FILTER, 
CENTROID...). I'm trying to find one way for this.
    Another way can be CONVEXHULL function, I can use this function to found 
the polygon that contains the data geom and after found the max and min point 
for this polygon. This function exist in 8i, 9i, 10g versions and I can use 
this when the data is a spatial function.
    I want to use the AGGR MBR function but it don't exist in 8i version, I 
want to use this because it support 3D data, the EXTENT_OF no, for the next 
release 4.6 or 5.0 I want to add the 3D data support for maporaclespatial, so I 
want find the best way now. For support this way I need to use add some token 
like 8I 9I 10G for data string to identify the version and apply the correct 
function, for 9i and 10G the aggr and for 8i can be extent_of or convexhull.
    I need to check more functions and performance to find the best way to add 
this support. Of course that your and other users hints is very good.
    I can't implement this and other things after the January 17, I go back to 
the lab in 17. But I'm testing the functions in Oracle in my personal computer. 
Any problem?
    More hints?
    Thanks.

Fernando Simon

comment:7 by silke@…, 19 years ago

Hi Fernando,

thanks for your information about your thoughts so far. It seems that you are
much deeper in the subject than I am and I am sorry that I don't have further
ideas how to solve the problem.

Concerning the time schedule this is completly OK for me. I just wanted to know
so that I could pass this information to our clients. 

Please let me know if you need any help or someone who tests your first
implementation once you have been able to do it.

Many greetings,

       Silke

comment:8 by fsimon@…, 19 years ago

Hi Silke,
    Sorry for my bad english in my last message:"....I can't implement this and 
other things after the January 17...". The correct is: "....I can't implement 
this and other things before the January 17....", or:"...I can implement this 
and other things after the January 17....".
    I believe that the best way is use the AGGR function and version tokens in 
data string.
    Thanks.

Fernando Simon

comment:9 by fsimon@…, 19 years ago

Resolution: fixed
Status: newclosed
Fixed in CVS version of maporaclespatial.c in Mapserver 4.5.
Thanks.
    
Note: See TracTickets for help on using tickets.