If people have GIST TODOs, please post them. ---------------------------------------------------------------------------
Teodor Sigaev wrote: > About page splitting algorithm in GiST in multikey case. For the beginning, > page > is splitted by calling pickSplit method of key of first column (pickSplit > method > is defined for opclass and it is a user function), then it try to find equal > values of first column in left and right pages ( gist.c lines 1264-1901 ). > If > it is, then GiST core will try to resort tuples with first equal keys between > left and right pages using penalty method for second and higher column's key. > If > it's not, it leave pages untouched. But unions for parent page of second and > higher column's keys will be formed. > > So, if index is defined as 'using gist (a,b,c)' then, in principle, GiST > index > can speed up queries like 'a=V1 and c=V2'. But it will not usable for > queries > ( b=V3 and c=V2 ). By the way, instead of '=' operation may be used other > operations. Number of supported operations by GiST is indefinite unlike, for > example, btree which supported only five: <, <=, =, =>, >. > > > > -- > Teodor Sigaev E-mail: [EMAIL PROTECTED] > WWW: http://www.sigaev.ru/ > > ---------------------------(end of broadcast)--------------------------- > TIP 9: the planner will ignore your desire to choose an index scan if your > joining column's datatypes do not match > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match