Opened 11 years ago
Closed 11 years ago
#1895 closed enhancement (fixed)
New node splitting algorithm for GiST
|Reported by:||smagen||Owned by:||pramsey|
Double sorting based node splitting algorithm allow to dramatically reduce number of index pages used for query evaluation
Change History (7)
by , 11 years ago
comment:1 by , 11 years ago
Post in the mailing list:
follow-up: 3 comment:2 by , 11 years ago
This looks like a well-written and well-documented patch - my only minor quibble is that it appears to drop some of the POSTGIS_DEBUGF() debugging macros which may be useful. Also out of interest, does this code alter any of the memory characteristics of the index build at all?
by , 11 years ago
Some debugging messages were added
comment:3 by , 11 years ago
Replying to mcayland:
This looks like a well-written and well-documented patch - my only minor quibble is that it appears to drop some of the POSTGIS_DEBUGF() debugging macros which may be useful.
I've added some debug messages. However I've to also apply part of this patch http://trac.osgeo.org/postgis/attachment/ticket/1161/gidx_to_string.patch in order to see them. Got following error without it.
ERROR: could not load library "/usr/lib/postgresql/9.1/lib/postgis-2.1.so": /usr/lib/postgresql/9.1/lib/postgis-2.1.so: undefined symbol: gidx_to_string
Also out of interest, does this code alter any of the memory characteristics of the index build at all?
Picksplit is called against at maximum few hundred of tuples. Memory context is cleaned after each inserted tuple. So, I don't expect any noticeable change of memory characteristics.
comment:4 by , 11 years ago
Committed to trunk at r10665 with a KOROTKOV_SPLIT #define in gserialized_gist_2d.c to turn it on/off. By default it is off. Testing and sounds of joy hoped for, and then we can turn it on permanently.
comment:5 by , 11 years ago
|Status:||new → closed|
Set as default split at r10669