Hi Andrea,

  Yes. I agree with your concerns and i too found that Oracle Locator did
not support SDO_GEOM.RELATE. The Oracle developer guide mentioned about
performance consideration on using SDO_GEOM.RELATE.  But, it is the only
option available for manufactured geometric fields used in layers.

 Your suggestion on using flag for field in view would be better option too.
Initially i will make changes and do some testing on this area. Any schedule
timeline for GeoServer next release? (with SQLView feature)

Thanks

regards
Senthil
On Tue, Jul 20, 2010 at 12:28 AM, Andrea Aime <[email protected]> wrote:

> Senthil wrote:
>
>> Hi Andrea
>>
>>  I had gone through the Oracle connector codes and fine to do changes to
>> that. In meantime did some manual testing for earlier sql statement with
>> SDO_GEOM.RELATE. It worked without any issues.
>> SELECT count(*) AS gt_result_ FROM (SELECT * FROM (SELECT * FROM (SELECT
>> b.GROUP_ID as GRP_ID, SDO_AGGR_UNION(SDOAGGRTYPE(a.LOCATION, 0.005)) as
>> GRP_LOCATION FROM GIS.PART_TABLE a, GIS.GROUP_TABLE b WHERE
>> a.PART_ID=b.PART_ID Group by b.GRP_ID ) *VTABLE WHERE
>> SDO_GEOM.RELATE*(GRP_LOCATION, 'anyinteract',
>> MDSYS.SDO_GEOMETRY(2003,2193,NULL,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3),MDSYS.SDO_ORDINATE_ARRAY(-154768.4241380731,4257259.84132448,3240947.544118471,6614572.798694815)),
>> 0.005 ) = 'TRUE' ) WHERE ROWNUM <= 1000000) gt_limited_;
>>  For above command used following format of SDO_GEOM.RELATE:
>> SDO_GEOM.RELATE(     geom1 IN MDSYS.SDO_GEOMETRY,      mask IN VARCHAR2,
>>   geom2 IN MDSYS.SDO_GEOMETRY,     tolerance IN NUMBER ) RETURN VARCHAR2;
>>
>> To implement this change as patch to Oracle connector, i wish to get the
>> advice on that. Can we consider another configuration for SDO_GEOM.RELATE
>> such currently used loose box field for SDO_FILTER or any other suggestions?
>>
>
> It seems to me having just a global flag for it would be a major
> limitation. As far as I know SDO_GEOM.RELATE never uses spatial indexes so
> it should be a last resort solution to be used only when the
> geometries are manufactured).
>
> Even when using views I guess only a small fraction of the geometries
> used are really manufactured, the others might be coming from joined
> tables, but that should not prevent the usage of SDO_RELATE.
>
> So I think it should be a per column flag. The easiest way to set it
> up is probably to try and run a test with spatial query using SDO_RELATE
> (using probably the bbox of the first geometry in the result set) and
> fall back on the SDO_GEOM.RELATE only if that query fails with a SQL
> exception
>
> Plus, that function has to be used with attention as Oracle Locator does
> not support it:
>
> http://download.oracle.com/docs/cd/E14072_01/appdev.112/e11830/sdo_locator.htm
>
> Cheers
> Andrea
>
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Reply via email to