diff options
| author | Bruce Momjian | 2002-09-02 06:22:20 +0000 |
|---|---|---|
| committer | Bruce Momjian | 2002-09-02 06:22:20 +0000 |
| commit | 595a5a78e0fa7174b95949f04f810501c0261c5a (patch) | |
| tree | 0da570e06d81dc5ca484a66053c0eb38675602dd /src/include | |
| parent | 81efc826081b7889753c449cf29dd72f75690047 (diff) | |
> Okay. When you get back to the original issue, the gold is hidden in
> src/backend/optimizer/path/indxpath.c; see the "special indexable
> operators" stuff near the bottom of that file. (It's a bit of a crock
> that this code is hardwired there, and not somehow accessed through a
> system catalog, but it's what we've got at the moment.)
The attached patch re-enables a bytea right hand argument (as compared
to a text right hand argument), and enables index usage, for bytea LIKE
Joe Conway
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/catalog/pg_operator.h | 6 | ||||
| -rw-r--r-- | src/include/catalog/pg_proc.h | 10 | ||||
| -rw-r--r-- | src/include/utils/selfuncs.h | 10 |
3 files changed, 13 insertions, 13 deletions
diff --git a/src/include/catalog/pg_operator.h b/src/include/catalog/pg_operator.h index ed71bae3bbe..ccf32bb2ead 100644 --- a/src/include/catalog/pg_operator.h +++ b/src/include/catalog/pg_operator.h @@ -8,7 +8,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: pg_operator.h,v 1.107 2002/08/22 04:45:11 momjian Exp $ + * $Id: pg_operator.h,v 1.108 2002/09/02 06:22:19 momjian Exp $ * * NOTES * the genbki.sh script reads this file and generates .bki @@ -827,9 +827,9 @@ DATA(insert OID = 1957 ( "<" PGNSP PGUID b f 17 17 16 1959 1960 0 0 0 0 DATA(insert OID = 1958 ( "<=" PGNSP PGUID b f 17 17 16 1960 1959 0 0 0 0 byteale scalarltsel scalarltjoinsel )); DATA(insert OID = 1959 ( ">" PGNSP PGUID b f 17 17 16 1957 1958 0 0 0 0 byteagt scalargtsel scalargtjoinsel )); DATA(insert OID = 1960 ( ">=" PGNSP PGUID b f 17 17 16 1958 1957 0 0 0 0 byteage scalargtsel scalargtjoinsel )); -DATA(insert OID = 2016 ( "~~" PGNSP PGUID b f 17 25 16 0 2017 0 0 0 0 bytealike likesel likejoinsel )); +DATA(insert OID = 2016 ( "~~" PGNSP PGUID b f 17 17 16 0 2017 0 0 0 0 bytealike likesel likejoinsel )); #define OID_BYTEA_LIKE_OP 2016 -DATA(insert OID = 2017 ( "!~~" PGNSP PGUID b f 17 25 16 0 2016 0 0 0 0 byteanlike nlikesel nlikejoinsel )); +DATA(insert OID = 2017 ( "!~~" PGNSP PGUID b f 17 17 16 0 2016 0 0 0 0 byteanlike nlikesel nlikejoinsel )); DATA(insert OID = 2018 ( "||" PGNSP PGUID b f 17 17 17 0 0 0 0 0 0 byteacat - - )); /* timestamp operators */ diff --git a/src/include/catalog/pg_proc.h b/src/include/catalog/pg_proc.h index e0b7c2beeea..0106132f59f 100644 --- a/src/include/catalog/pg_proc.h +++ b/src/include/catalog/pg_proc.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: pg_proc.h,v 1.267 2002/09/01 00:58:06 tgl Exp $ + * $Id: pg_proc.h,v 1.268 2002/09/02 06:22:19 momjian Exp $ * * NOTES * The script catalog/genbki.sh reads this file and generates .bki @@ -2770,13 +2770,13 @@ DESCR("adjust time precision"); DATA(insert OID = 1969 ( timetz PGNSP PGUID 12 f f t f i 2 1266 "1266 23" timetz_scale - _null_ )); DESCR("adjust time with time zone precision"); -DATA(insert OID = 2005 ( bytealike PGNSP PGUID 12 f f t f i 2 16 "17 25" bytealike - _null_ )); +DATA(insert OID = 2005 ( bytealike PGNSP PGUID 12 f f t f i 2 16 "17 17" bytealike - _null_ )); DESCR("matches LIKE expression"); -DATA(insert OID = 2006 ( byteanlike PGNSP PGUID 12 f f t f i 2 16 "17 25" byteanlike - _null_ )); +DATA(insert OID = 2006 ( byteanlike PGNSP PGUID 12 f f t f i 2 16 "17 17" byteanlike - _null_ )); DESCR("does not match LIKE expression"); -DATA(insert OID = 2007 ( like PGNSP PGUID 12 f f t f i 2 16 "17 25" bytealike - _null_ )); +DATA(insert OID = 2007 ( like PGNSP PGUID 12 f f t f i 2 16 "17 17" bytealike - _null_ )); DESCR("matches LIKE expression"); -DATA(insert OID = 2008 ( notlike PGNSP PGUID 12 f f t f i 2 16 "17 25" byteanlike - _null_ )); +DATA(insert OID = 2008 ( notlike PGNSP PGUID 12 f f t f i 2 16 "17 17" byteanlike - _null_ )); DESCR("does not match LIKE expression"); DATA(insert OID = 2009 ( like_escape PGNSP PGUID 12 f f t f i 2 17 "17 17" like_escape_bytea - _null_ )); DESCR("convert match pattern to use backslash escapes"); diff --git a/src/include/utils/selfuncs.h b/src/include/utils/selfuncs.h index 18047f5dbf9..b85500dfde7 100644 --- a/src/include/utils/selfuncs.h +++ b/src/include/utils/selfuncs.h @@ -8,7 +8,7 @@ * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: selfuncs.h,v 1.6 2002/06/20 20:29:53 momjian Exp $ + * $Id: selfuncs.h,v 1.7 2002/09/02 06:22:20 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -33,12 +33,12 @@ typedef enum /* selfuncs.c */ -extern Pattern_Prefix_Status pattern_fixed_prefix(char *patt, +extern Pattern_Prefix_Status pattern_fixed_prefix(Const *patt, Pattern_Type ptype, - char **prefix, - char **rest); + Const **prefix, + Const **rest); extern bool locale_is_like_safe(void); -extern char *make_greater_string(const char *str, Oid datatype); +extern Const *make_greater_string(const Const *str_const); extern Datum eqsel(PG_FUNCTION_ARGS); extern Datum neqsel(PG_FUNCTION_ARGS); |
