Hi all,
We are using Geoserver 1.7.2 with ArcSDE 9.1 on Oracle 9i.
Geoserver 1.7.2 runs on Tomcat 6.0.18 with Java 1.6.0_12 with JVM memory settings to 512M.
With large datasets > 1GB (1811867 Polygons) the GetfeatureInfo request takes about 300000-400000 milliseconds
which is about 5-7 minutes, with info_format as text/html. When I use info_format=text/plain or info_format=application/vnd.ogc.gml
for the same request the response time is between 1 to 3 seconds, which is acceptable.
The map for the above dataset loads in < 2 seconds in the Map Preview Openlayers client with ScaleDenominators set in the SLD .
We have also tested the same dataset for Geoserver 1.7.1 and 1.7.0 on Tomcat 6.0.14 with Java 1.6.0_10
and JVM memory settings to 512M, with the same result as described above for all three versions.
All Tomcat servers is running on Windows XP or on 2003 server machines.
The ArcSDE server is running on a separate machine.
I would appreciate some help on how to solve this.
Regards,
Jonas Holmberg
Geological Survey of Sweden
Jonas Holmberg ha scritto:
Hi all,
We are using Geoserver 1.7.2 with ArcSDE 9.1 on Oracle 9i.
Geoserver 1.7.2 runs on Tomcat 6.0.18 with Java 1.6.0_12 with JVM memory settings to 512M.
With large datasets > 1GB (1811867 Polygons) the GetfeatureInfo request takes about 300000-400000 milliseconds
which is about 5-7 minutes, with info_format as text/html. When I use info_format=text/plain or info_format=application/vnd.ogc.gml
for the same request the response time is between 1 to 3 seconds, which is acceptable.
The map for the above dataset loads in < 2 seconds in the Map Preview Openlayers client with ScaleDenominators set in the SLD .
We have also tested the same dataset for Geoserver 1.7.1 and 1.7.0 on Tomcat 6.0.14 with Java 1.6.0_10
and JVM memory settings to 512M, with the same result as described above for all three versions.
All Tomcat servers is running on Windows XP or on 2003 server machines.
The ArcSDE server is running on a separate machine.
I would appreciate some help on how to solve this.
Hum... this makes me think there are some code paths in the arcsde
datastore which are not well covered and that end up requesting
the whole dataset against ArcSDE.
In particular, the only difference I could spot in the html output
is that the code has to turn the features returned by the datastore
into an in-memory list that the html template engine can handle.
This is done by some code that is using a FeatureVisitor instead of
a FeatureIterator:
featureCollection.accepts( new FeatureVisitor(){
public void visit(Feature feature) {
list.add( (SimpleFeature) feature );
}
}, null );
Gabriel (the SDE datastore maintainer), does it ring a bell to you?
Cheers
Andrea
--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.