ST_Disjoint returns 0 (false) when the geometry is not touching but is very close to the 2nd geometry being compared.
Last Published: August 25, 2014No Product Found
Bug ID Number
NIM010755
Submitted
August 4, 2007
Last Modified
April 2, 2025
Applies to
No Product Found
Version found
9.2
Version Fixed
9.3
Status
Fixed
The bug has been fixed. See the Version Fixed and Additional Information, if applicable, for more information.
Description
Using the ST_Disjoint operator in Oracle can return incorrect results when ST_Geometry shapes do not intersect (disjoint).
Cause
The ST_Disjoint operator first applies an envelope filter for optimization, when checking if the two input ST_Geometry shapes are disjoint or not.
Incorrect results are returned when the two envelopes of the input ST_Geometry shapes intersect (not disjoint). The ST_Disjoint operator immediately returns false results.
The ST_Disjoint operator should only return true results if the two input ST_Geometry shapes' envelopes are disjoint; however, when the envelopes do intersect and the features are disjoint, the two input shapes must be computationally compared to determine if they are disjoint or not.
If the two input ST_Geometry shapes are disjoint, the operator returns a value of 1 (true).
Workaround
There is no available workaround. For further assistance please contact ESRI's Support Services.