-
- Downloads
GiST improvements:
- make sure we always invoke user-supplied GiST methods in a short-lived memory context. This means the backend isn't exposed to any memory leaks that be in those methods (in fact, it is probably a net loss for most GiST methods to bother manually freeing memory now). This also means we can do away with a lot of ugly manual memory management in the GiST code itself. - keep the current page of a GiST index scan pinned, rather than doing a ReadBuffer() for each tuple produced by the scan. Since ReadBuffer() is expensive, this is a perf. win - implement dead tuple killing for GiST indexes (which is easy to do, now that we keep a pin on the current scan page). Now all the builtin indexes implement dead tuple killing. - cleanup a lot of ugly code in GiST
Showing
- doc/src/sgml/gist.sgml 2 additions, 2 deletionsdoc/src/sgml/gist.sgml
- src/backend/access/gist/gist.c 250 additions, 403 deletionssrc/backend/access/gist/gist.c
- src/backend/access/gist/gistget.c 184 additions, 193 deletionssrc/backend/access/gist/gistget.c
- src/backend/access/gist/gistscan.c 160 additions, 108 deletionssrc/backend/access/gist/gistscan.c
- src/include/access/gist.h 23 additions, 12 deletionssrc/include/access/gist.h
Loading
Please register or sign in to comment