I would like some opinions about this.

I am running a multi-threaded process to render thousands of maps using the
Stereographic projection.

Basically, I do the following for each new map:

- Take a WKT definition for an Stereographic projection.
- Modify latitude_of_origin and central_meridian.
- Build the CoordinateReferenceSystem via CRS.parseWKT.
- Create the MapContent, set the CRS and add layers from shape files and
WMS.
- Render the MapContent using StreamingRenderer.

Since I noticed an important deterioration in the response time of my
service after ~20K maps I did some jstacks and jmaps.

Jmap shows one instance of
org.geotools.referencing.operation.projection.ObliqueOrthographic for each
map created so after an hour or so I have tens of thousands of them.

But I am doing MapContent.dispose() and getting rid of my CRS after
rendering each map so I wonder why those instances stay there.

Another thing I noticed is that most threads are stuck here:



And here:



Interesting thing is that I don't have that problem when I don't modify the
coordinates in the WKT for each CRS.  In this case it works well for hours
but that's not useful for may needs since I really need the oblique planar
projection based on different coordinates for each map.

Any idea or suggestion would be very much appreciated.

Thanks,
Felipe





--
View this message in context: 
http://osgeo-org.1560.x6.nabble.com/Memory-leak-when-using-StreamingRenderer-with-variations-in-WKT-based-CRS-s-tp5282556.html
Sent from the geotools-devel mailing list archive at Nabble.com.

------------------------------------------------------------------------------
_______________________________________________
GeoTools-Devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to