| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
| |
yesterday's proposal to pghackers. Also remove unnecessary parameters
to heap_beginscan, heap_rescan. I modified pg_proc.h to reflect the
new numbers of parameters for the AM interface routines, but did not
force an initdb because nothing actually looks at those fields.
|
|
|
|
|
|
|
|
|
|
|
|
| |
"bad smell" in that code. Stuff like function parameters that aren't
used, typos in the comments, comparison between signed and unsigned
ints, etc.
Attached is a pretty trivial patch; it compiles, but beyond that
completely untested. Unless anyone sees any problems, please apply for
7.3.
Neil Conway
|
|
|
|
| |
tests pass.
|
|
|
|
|
|
| |
for haskeytype). Update GiST contrib modules too. Add linear-time split
algorithm for R-tree GiST opclass.
From Oleg Bartunov and Teodor Sigaev.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
per previous discussion on pghackers. Most of the duplicate code in
different AMs' ambuild routines has been moved out to a common routine
in index.c; this means that all index types now do the right things about
inserting recently-dead tuples, etc. (I also removed support for EXTEND
INDEX in the ambuild routines, since that's about to go away anyway, and
it cluttered the code a lot.) The retail indextuple deletion routines have
been replaced by a "bulk delete" routine in which the indexscan is inside
the access method. I haven't pushed this change as far as it should go yet,
but it should allow considerable simplification of the internal bookkeeping
for deletions. Also, add flag columns to pg_am to eliminate various
hardcoded tests on AM OIDs, and remove unused pg_am columns.
Fix rtree and gist index types to not attempt to store NULLs; before this,
gist usually crashed, while rtree managed not to crash but computed wacko
bounding boxes for NULL entries (which might have had something to do with
the performance problems we've heard about occasionally).
Add AtEOXact routines to hash, rtree, and gist, all of which have static
state that needs to be reset after an error. We discovered this need long
ago for btree, but missed the other guys.
Oh, one more thing: concurrent VACUUM is now the default.
|
| |
|
|
|
|
|
|
|
|
|
| |
appropriate pin-count manipulation, and instead use ReleaseAndReadBuffer.
Make use of the fact that the passed-in buffer (if there is one) must
be pinned to avoid grabbing the bufmgr spinlock when we are able to
return this same buffer. Eliminate unnecessary 'previous tuple' and
'next tuple' fields of HeapScanDesc and IndexScanDesc, thereby removing
a whole lot of bookkeeping from heap_getnext() and related routines.
|
|
|
|
|
| |
and Teodor Sigaev). Declare key values as Datum where appropriate,
rather than char* (Tom Lane).
|
|
|
|
|
| |
number of strategies supported by an index AM. Add missing copyright
notices and CVS $Header$ markers to GIST source files.
|
| |
|
| |
|
|
|
|
|
|
| |
--- ie, they're only called for side-effects. Add a PG_RETURN_VOID()
macro and use it where appropriate. This probably doesn't change the
machine code by a single bit ... it's just for documentation.
|
|
|
|
|
| |
functions that take pass-by-value datatypes. Should be ready for
port testing ...
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
New code for locking buffer' context.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
no longer returns buffer pointer, can be gotten from scan;
descriptor; bootstrap can create multi-key indexes;
pg_procname index now is multi-key index; oidint2, oidint4, oidname
are gone (must be removed from regression tests); use System Cache
rather than sequential scan in many places; heap_modifytuple no
longer takes buffer parameter; remove unused buffer parameter in
a few other functions; oid8 is not index-able; remove some use of
single-character variable names; cleanup Buffer variables usage
and scan descriptor looping; cleaned up allocation and freeing of
tuples; 18k lines of diff;
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
indenting. Also static variable indenting.
|
| |
|
|
|
|
| |
2. Re-initialize keys in gistrescan (if gist used in inner scan).
|
| |
|
| |
|
|
|
|
| |
Makefile fixed for fmgr.h
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Mainly...fix up the includes I removed, as well as prototypes
Pointed out by D'Arcy
|
|
|
|
| |
files
|
|
|
|
| |
postgres.h already pulled in (postgres.h includes c.h)
|
|
the commit :(
Here's the rest of the GiST code thta was missing...
|