mirror of
https://github.com/postgres/postgres.git
synced 2025-11-09 06:21:09 +03:00
Cross-data-type comparisons are now indexable by btrees, pursuant to my
pghackers proposal of 8-Nov. All the existing cross-type comparison operators (int2/int4/int8 and float4/float8) have appropriate support. The original proposal of storing the right-hand-side datatype as part of the primary key for pg_amop and pg_amproc got modified a bit in the event; it is easier to store zero as the 'default' case and only store a nonzero when the operator is actually cross-type. Along the way, remove the long-since-defunct bigbox_ops operator class.
This commit is contained in:
@@ -15,7 +15,7 @@
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.266 2003/11/09 21:30:36 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.267 2003/11/12 21:15:52 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -273,6 +273,17 @@ _copyIndexScan(IndexScan *from)
|
||||
}
|
||||
newnode->indxstrategy = newstrat;
|
||||
}
|
||||
/* this can become COPY_NODE_FIELD when OID lists are normal objects: */
|
||||
{
|
||||
List *newsubtype = NIL;
|
||||
List *tmp;
|
||||
|
||||
foreach(tmp, from->indxsubtype)
|
||||
{
|
||||
newsubtype = lappend(newsubtype, listCopy(lfirst(tmp)));
|
||||
}
|
||||
newnode->indxsubtype = newsubtype;
|
||||
}
|
||||
COPY_SCALAR_FIELD(indxorderdir);
|
||||
|
||||
return newnode;
|
||||
|
||||
Reference in New Issue
Block a user