On Fri, Feb 11, 2011 at 11:54 PM, Fernando Barbat <[email protected]> wrote: > I looked at Postgres log and if I'm not missing something, this is the > query: > > SELECT > "gid","name","area",encode(asBinary(force_2d("the_geom"),'XDR'),'base64') as > "the_geom" FROM "states" WHERE "the_geom" && GeomFromText('POLYGON > ((-7134402.895051801 -4322800.136486195, -7134402.895051801 > -3351652.113513805, -5290601.604948199 -3351652.113513805, > -5290601.604948199 -4322800.136486195, -7134402.895051801 > -4322800.136486195))', 900913) > > The "name" field should be fetched for labeling. It's required in my SLD to > be done like that. > > This case, I think Geoserver does filtering in memory. Doesn't it? Remember > this was the case where the filter was used within a SLD, not in WFS. I > think it's ok that Geoserver behaves this way since it must load all > polygons within the extent anyway.
I see. Well, filtering in memory or not really depends on the styling you have. GeoServer actually tries hard to pass down the filters to the database because that might mean reading a lot less features on occasion (thinking filtering out everything but highways at a low zoom level, where you just want to display them), but if there are too many attribute filters to be combined it will give up to avoid issues with databases that cannot parse or efficiently handle large queries (as far as I remember the limit is 20 filters, but I may be wrong). Do you have a lot more rules with associated conditions in your SLD? However if the filtering happens in memory yes, the two code paths are different, equality tries a lot harder to harmonize the types of two sides of the comparison than the "is not equal to" filter. It should not be hard to harmonize them though: http://jira.codehaus.org/browse/GEOT-3429 (just fixed btw) Cheers Andrea -- ------------------------------------------------------- Ing. Andrea Aime GeoSolutions S.A.S. Tech lead Via Poggio alle Viti 1187 55054 Massarosa (LU) Italy phone: +39 0584 962313 fax: +39 0584 962313 mob: +39 333 8128928 http://www.geo-solutions.it http://geo-solutions.blogspot.com/ http://www.youtube.com/user/GeoSolutionsIT http://www.linkedin.com/in/andreaaime http://twitter.com/geowolf ------------------------------------------------------- ------------------------------------------------------------------------------ The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb _______________________________________________ Geoserver-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geoserver-users
