[TinyOWS-users] Speed of GetFeature Request with 4 millions point
Marc-André Trottier
marcandre_trottier at hotmail.com
Thu Aug 18 10:22:02 EST 2011
i replaced all the function fe_bbox_layer() in fe_spatial_ops.c by this :
/*c*/ srid = ows_srs_get_srid_from_layer(o, typename);
/*c*/ buffer_add_str(sql, " (SELECT ST_Transform(");
/*c*/ buffer_copy(sql, envelope);
/*c*/ buffer_add_str(sql,", ");
/*c*/ buffer_add_int(sql,srid);
/*c*/ buffer_add_str(sql, ") as ");
/*c*/ buffer_add(sql,'"');
/*c*/ buffer_add_str(sql,"the_geom");
/*c*/ buffer_add(sql,'"');
/*c*/ buffer_add_str(sql, ") as B ON ST_Intersects(A.");
/*c*/ buffer_add(sql, '"');
/*c*/ buffer_copy(sql, propertyname);
/*c*/ buffer_add(sql, '"');
/*c*/ buffer_add_str(sql,", B.the_geom)");
and switch where for INNER JOIN in wfs_get_feature.c, function
wfs_retrieve_sql_request_list() :
line 598 /* buffer_add_str(where, " WHERE ");*/
line 599 /*c*/buffer_add_str(where, " as A INNER JOIN ");
it's working for my request in my application but it is working for all
requests, i can't say
i did not done many type of request
i think my variable 'srid' don't get the good srid.
you need the srid of the table and i understand
ows_srs_get_srid_from_layer() return the layer's srid.
there's a way to get the table's srid in fe_bbox_layer() ?
Marc-André Trottier
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.maptools.org/pipermail/tinyows-users/attachments/20110818/b5397e60/attachment.htm
More information about the TinyOWS-users
mailing list