Hi,

I have made important modifications in EditTransaction class in order to 
improve performance.
1 - I have replaced most Lists by Sets and Maps avoiding the 
List.contains() method which is far too slow.
2 - I have removed geometry cloning in createFeature and deleteFeature 
methods, avoiding time and memory consuming operations.

I cannot say I'm 100% sure cloning was useless in every case, but I made 
a lot of tests to checks it does not beark anythink. Please, report any 
suspect behaviour (from next NB).

You'll see the benefits if you compare the following operation which 
uses a undoable transaction :
Explode a multigeometry having 180000 small polygons
Before
2mn 50s - memory increase from 160Mb to 425Mb
After
10 s - memory increase from 160Mb to 260Mb

Michaël


------------------------------------------------------------------------------
BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA
http://p.sf.net/sfu/rim-devcon-copy2
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to