aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2000-03-20 04:02:47 +0000
committerBruce Momjian <bruce@momjian.us>2000-03-20 04:02:47 +0000
commit0e1f485f5ffff1deea6536fddecda299d0acc391 (patch)
tree5d8a1deb61693aeef63f122371a8aabfad346888
parentfe8098ed0c82dde7a1c0ef308bbce2dd5c4d52c2 (diff)
downloadpostgresql-0e1f485f5ffff1deea6536fddecda299d0acc391.tar.gz
postgresql-0e1f485f5ffff1deea6536fddecda299d0acc391.zip
Add compatiblity information for bytea.
-rw-r--r--src/backend/parser/parse_coerce.c7
-rw-r--r--src/backend/utils/adt/selfuncs.c5
-rw-r--r--src/include/c.h8
-rw-r--r--src/include/parser/parse_coerce.h9
4 files changed, 21 insertions, 8 deletions
diff --git a/src/backend/parser/parse_coerce.c b/src/backend/parser/parse_coerce.c
index 35312eaadf0..8ff54677ef6 100644
--- a/src/backend/parser/parse_coerce.c
+++ b/src/backend/parser/parse_coerce.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/parser/parse_coerce.c,v 2.37 2000/03/19 00:15:39 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/parser/parse_coerce.c,v 2.38 2000/03/20 04:02:45 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -129,7 +129,7 @@ coerce_type(ParseState *pstate, Node *node, Oid inputTypeId,
/* safety check that we got the right thing */
if (exprType(result) != targetTypeId)
elog(ERROR, "coerce_type: conversion function %s produced %s",
- typeTypeName(targetType),
+ typeTypeName(targetType),
typeidTypeName(exprType(result)));
/*
@@ -320,6 +320,7 @@ TypeCategory(Oid inType)
case (NAMEOID):
case (BPCHAROID):
case (VARCHAROID):
+ case (BYTEAOID):
case (TEXTOID):
case (LZTEXTOID):
result = STRING_TYPE;
@@ -550,6 +551,7 @@ PromoteLesserType(Oid inType1, Oid inType2, Oid *newType1, Oid *newType2)
{
case (BPCHAROID):
case (VARCHAROID):
+ case (BYTEAOID):
case (TEXTOID):
case (INT2OID):
@@ -614,6 +616,7 @@ PromoteLesserType(Oid inType1, Oid inType2, Oid *newType1, Oid *newType2)
{
case (BPCHAROID):
case (VARCHAROID):
+ case (BYTEA):
case (TEXTOID):
case (INT2OID):
diff --git a/src/backend/utils/adt/selfuncs.c b/src/backend/utils/adt/selfuncs.c
index ff5ec332ea2..76211e688b9 100644
--- a/src/backend/utils/adt/selfuncs.c
+++ b/src/backend/utils/adt/selfuncs.c
@@ -15,7 +15,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v 1.57 2000/02/26 23:03:12 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v 1.58 2000/03/20 04:02:45 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -536,6 +536,7 @@ convert_to_scalar(Datum value, Oid typid,
}
case BPCHAROID:
case VARCHAROID:
+ case BYTEA:
case TEXTOID:
if (VARSIZE(DatumGetPointer(value)) > VARHDRSZ)
{
@@ -595,7 +596,7 @@ convert_to_scalar(Datum value, Oid typid,
return true;
case TINTERVALOID:
{
- TimeInterval interval = (TimeInterval) DatumGetPointer(value);
+ TimeInterval interval = (TimeInterval) DatumGetPointer(value);
if (interval->status != 0)
{
diff --git a/src/include/c.h b/src/include/c.h
index fb51e5011c3..ea96d87b911 100644
--- a/src/include/c.h
+++ b/src/include/c.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: c.h,v 1.65 2000/03/19 22:08:51 tgl Exp $
+ * $Id: c.h,v 1.66 2000/03/20 04:02:46 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -673,8 +673,10 @@ extern int assertTest(int val);
* overhead.
*
* We got the 64 number by testing this against the stock memset() on
- * BSD/OS 3.0. Larger values were slower. (I think the crossover point
- * could be a good deal higher for most platforms, actually --- tgl)
+ * BSD/OS 3.0. Larger values were slower. bjm 1997/09/11
+ *
+ * I think the crossover point could be a good deal higher for
+ * most platforms, actually. tgl 2000-03-19
*/
#define MemSet(start, val, len) \
do \
diff --git a/src/include/parser/parse_coerce.h b/src/include/parser/parse_coerce.h
index d0acd944e11..0549386a397 100644
--- a/src/include/parser/parse_coerce.h
+++ b/src/include/parser/parse_coerce.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: parse_coerce.h,v 1.19 2000/03/14 23:06:48 thomas Exp $
+ * $Id: parse_coerce.h,v 1.20 2000/03/20 04:02:47 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -45,6 +45,7 @@ typedef enum CATEGORY
|| ((t) == BPCHAROID) \
|| ((t) == VARCHAROID) \
|| ((t) == TEXTOID) \
+ || ((t) == BYTEAOID) \
|| ((t) == INT4OID) \
|| ((t) == INT8OID) \
|| ((t) == FLOAT8OID) \
@@ -81,10 +82,16 @@ typedef enum CATEGORY
#define IS_BINARY_COMPATIBLE(a,b) \
(((a) == BPCHAROID && (b) == TEXTOID) \
|| ((a) == BPCHAROID && (b) == VARCHAROID) \
+ || ((a) == BPCHAROID && (b) == BYTEAOID) \
|| ((a) == VARCHAROID && (b) == TEXTOID) \
|| ((a) == VARCHAROID && (b) == BPCHAROID) \
+ || ((a) == VARCHAROID && (b) == BYTEAOID) \
|| ((a) == TEXTOID && (b) == BPCHAROID) \
|| ((a) == TEXTOID && (b) == VARCHAROID) \
+ || ((a) == TEXTOID && (b) == BYTEAOID) \
+ || ((a) == BYTEAOID && (b) == BPCHAROID) \
+ || ((a) == BYTEAOID && (b) == VARCHAROID) \
+ || ((a) == BYTEAOID && (b) == TEXTOID) \
|| ((a) == OIDOID && (b) == INT4OID) \
|| ((a) == OIDOID && (b) == REGPROCOID) \
|| ((a) == INT4OID && (b) == OIDOID) \