Details
-
Type:
Improvement
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 2.5.1
-
Component/s: arcsde plugin
-
Labels:None
Description
ArcSDEFeatureCollection was developed when we the connection management forced it to hold a connection through its lifetime.
When switched to SessionPool and command queue, I implemented Sessions in a way that they can always follow the grab/use/dispose cycle in smaller execution units (that is, Sessions are aquired in a per transaction basis and the returned session takes care of actually being returned to the pool or not depending on whether a transaction is active).
This makes for an extremely ease of use since we don't have to think on holding a session nor when it is or not appropriate to close it. Yet, ArcSDEFEatureCollection still contains some old mess that should be removed by simply overriding DataFeatureCollection.close() and let the returned ArcSDEFEatureReader call Session.dispose() without worrying about anything else