AnsweredAssumed Answered

How does ArcMap generate bounding boxes for spatial queries?

Question asked by ameskamp on Aug 14, 2017
Latest reply on Jan 11, 2018 by MidnightYell2003



we have a utility customer who has significantly different display performance in ArcGIS 10.2.1 (the "utility version") when displaying the same MXD on two different client machines for the same ST_GEOMETRY feature classes in the same database (Oracle 12.1). We checked the usual suspects (network latency, CPU speed etc.), but we found from Oracle traces that Oracle does significantly more work when the Mxd is displayed from client 1 than from client 2 (data is in the buffer cache for both cases, so no disk reads in either trace).


We then looked at the spatial queries which look basically like this:

SELECT  ... FROM MyFeatureClass WHERE
SDE.ST_EnvIntersects(MyFeatuerClass.SHAPE,:1,:2,:3,:4) = 1


Bind variables :1 through :4 contain the bounding box coordinates in map units, and we found that ArcMap generates significantly different bounding boxes for the same Mxd from the two different clients. The Mxd has group layers, and the effect is different for the different group layers: Layers in one group layer show very little difference, whereas another group layer has bounding boxes that are 8 times as wide (and 8 times as high).


I would have thought that ArcMap basically uses the visible map extent as a bouding box, and that is what we see on the fast client, but where does it get the large values for the slow client?


I'd open a tech support case, but I have no idea how to reproduce the problem ...


I have plenty of details if anyone is interested...


Thanks for any ideas, Martin