|
PostgreSQL Source Code git master
|

Go to the source code of this file.
Data Structures | |
| struct | GistSplitUnion |
Macros | |
| #define | SWAPVAR(s, d, t) |
| #define SWAPVAR | ( | s, | |
| d, | |||
| t | |||
| ) |
Definition at line 237 of file gistsplit.c.
|
static |
Definition at line 113 of file gistsplit.c.
References fb(), gistentryinit, gistpenalty(), i, and j.
Referenced by gistUserPicksplit().
|
static |
Definition at line 344 of file gistsplit.c.
References fb(), FirstOffsetNumber, FunctionCall2Coll(), GEVHDRSZ, i, GistEntryVector::n, OffsetNumberNext, palloc(), PointerGetDatum(), GIST_SPLITVEC::spl_ldatum, GIST_SPLITVEC::spl_left, GIST_SPLITVEC::spl_nleft, GIST_SPLITVEC::spl_nright, GIST_SPLITVEC::spl_rdatum, GIST_SPLITVEC::spl_right, GISTSTATE::supportCollation, and GISTSTATE::unionFn.
Referenced by gistUserPicksplit().
| void gistSplitByKey | ( | Relation | r, |
| Page | page, | ||
| IndexTuple * | itup, | ||
| int | len, | ||
| GISTSTATE * | giststate, | ||
| GistSplitVector * | v, | ||
| int | attno | ||
| ) |
Definition at line 623 of file gistsplit.c.
References Assert, fb(), GEVHDRSZ, gistdentryinit(), gistSplitByKey(), gistSplitHalf(), gistunionsubkey(), gistUserPicksplit(), i, index_getattr(), j, GISTSTATE::leafTupdesc, len, TupleDescData::natts, GISTSTATE::nonLeafTupdesc, palloc(), palloc_array, GistSplitVector::spl_dontcare, GIST_SPLITVEC::spl_left, GistSplitVector::spl_lisnull, GIST_SPLITVEC::spl_nleft, GIST_SPLITVEC::spl_nright, GIST_SPLITVEC::spl_right, GistSplitVector::spl_risnull, and GistSplitVector::splitVector.
Referenced by gistSplit(), and gistSplitByKey().
|
static |
Definition at line 585 of file gistsplit.c.
References i, len, palloc(), GIST_SPLITVEC::spl_left, GIST_SPLITVEC::spl_nleft, GIST_SPLITVEC::spl_nright, and GIST_SPLITVEC::spl_right.
Referenced by gistSplitByKey().
|
static |
Definition at line 80 of file gistsplit.c.
References GistSplitUnion::dontcare, fb(), and gistunionsubkeyvec().
Referenced by gistSplitByKey(), and gistUserPicksplit().
|
static |
Definition at line 47 of file gistsplit.c.
References fb(), gistMakeUnionItVec(), i, palloc_array, and pfree().
Referenced by gistunionsubkey().
|
static |
Definition at line 415 of file gistsplit.c.
References Assert, DEBUG1, ereport, errcode(), errhint(), errmsg(), fb(), findDontCares(), FirstOffsetNumber, FunctionCall2Coll(), genericPickSplit(), gistKeyIsEQ(), gistunionsubkey(), InvalidOffsetNumber, TupleDescData::natts, GISTSTATE::nonLeafTupdesc, palloc0_array, GISTSTATE::picksplitFn, placeOne(), PointerGetDatum(), RelationGetRelationName, removeDontCares(), GistSplitVector::spl_dontcare, GistSplitVector::spl_lattr, GIST_SPLITVEC::spl_ldatum_exists, GistSplitVector::spl_lisnull, GistSplitVector::spl_rattr, GistSplitVector::spl_risnull, GistSplitVector::splitVector, GISTSTATE::supportCollation, and supportSecondarySplit().
Referenced by gistSplitByKey().
|
static |
Definition at line 200 of file gistsplit.c.
References fb(), gistDeCompressAtt(), gistentryinit, gistpenalty(), INDEX_MAX_KEYS, TupleDescData::natts, GISTSTATE::nonLeafTupdesc, GistSplitVector::spl_lattr, GIST_SPLITVEC::spl_left, GistSplitVector::spl_lisnull, GIST_SPLITVEC::spl_nleft, GIST_SPLITVEC::spl_nright, GistSplitVector::spl_rattr, GIST_SPLITVEC::spl_right, GistSplitVector::spl_risnull, and GistSplitVector::splitVector.
Referenced by gistUserPicksplit().
|
static |
Definition at line 258 of file gistsplit.c.
References fb(), gistentryinit, gistMakeUnionKey(), gistpenalty(), and SWAPVAR.
Referenced by gistUserPicksplit().