Skip to main content

I have a large polygon SDE feature class (>3M features) from which I only need polygons intersecting a few Oracle polygon features.

I've connected the Oracle features to the SDE FeatureReader's Initiator port and I'm using them to filter SDE data with the 'Initiator Intersects Result' spatial filter.

I've realized it returns duplicates when there's an SDE feature intersecting more than one (non overlapping) Initiator feature. So if an SDE feature intersects 3 Initiator features I get 3 copies of the SDE feature.

This is not what I would expect.

My only option is to use a DuplicatFilter right after the FeatureReader but when reading thousands of features this will slow down my translation.

Has anyone come across this same problem?

Yes I have, and the DuplicateFilter on objectid is a simple solution. It will cost time, mostly loading and a bit processing.

A faster solution is to do the query in the database, using a SQLExecutor.


Yes I have, and the DuplicateFilter on objectid is a simple solution. It will cost time, mostly loading and a bit processing.

A faster solution is to do the query in the database, using a SQLExecutor.

I'll try using a SQLExecutor. Thanks!


Reply