[postgis-users] ST_Distance with geography really slow: trees and caches

Nicolás Lichtmaier nicolasl at wolfram.com
Mon Jan 6 07:35:06 PST 2014


I'm trying to solve a mistery (and I didn't know is I should post here 
or to the the devel list)

ST_Distance between complex polygons is very slow here, despite the work 
done in http://boundlessgeo.com/2012/07/making-geography-faster/ .. It's 
taking like 4 seconds.

Looking harder into this I see there's a _st_distancetree(geo1, geo2) 
that completes the task in 171 ms....

It seems to me that the standard ST_Distance is not using the new 
"circular bounding boxes" code...

So I downloaded the source code and I saw that geography_distance_cache 
always fails because GetCircTreeGeomCache always returns null. I see 
that a cache is initialized and put into a "generic cache" array, but 
then is reset to null in GetGenericCacheCollection when called from 
GetPROJ4SRSCache beacuse "fcinfo->flinfo->fn_extra" is again null... 
(set in MemoryContextAllocZero)

Does this what I am saying make sense? =)

How is this cache supposed to work?

Thanks for any help!

-- 
Nicolás.-

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20140106/304d6306/attachment.html>


More information about the postgis-users mailing list