Hi, Rui
Here’s the latest news about the memory and CPU consuming problem. We’ve tested the following classes in MapSuiteCore for Projection. ManagedProj4Projection, UnmanagedProj4Projection, Proj4Projection. We found that the memory consuming problem occurred in all of them.
However, while using ManagedProj4Projection or UnmanagedProj4Projection, the conversion is much faster than using Proj4Projection.
Here are two sets of data coming out of our tests with the shapefile you provided in your sample.
Test1:
Use code sample you provided: ThinkGEOWEB_MemoryTest( 4 browsers to simulate 4 requests)
ClassName
Time First Imaged Returned(sec)
Memory(MB)
CPU(%)
Proj4Projection
45~60
200 ~700
25~70
ManagedProj4Projection
<30
200~700
25~70
UnmanagedProj4Projection
<30
200~700
25~70
Test2:
Just call GetAllFeature method in MapSuiteCore.
ClassName
Time All Feature Returned (sec)
Memory(MB)
Memory After Calling GC.Collect (MB)
CPU(%)
Proj4Projection
26
180
14
25
ManagedProj4Projection
14
180
14
25
UnmanagedProj4Projection
14
180
14
25
So, you can have a try on both ManagedProj4Projection and UnmanagedProj4Projection to see if it helps to improve the performance.
The other issue you’ve mentioned in the first post: “memory overflow, ORA: 1426”. Is it possible that the error is caused by some large geometry data?
We had encountered this kind of error when we were preparing some large data tables for Oracle Spatial. For example, like a record of a MultiplePolygon has more than 8,000 points in it, when calling Get_WKB function on this field, the same error is raised at the server side, in SQLPLUS.
We’ll keep on working to solve the memory consuming problem. That’s for your information and advice.
Thanks.