Commit 0e1f485f authored by Bruce Momjian's avatar Bruce Momjian

Add compatiblity information for bytea.

parent fe8098ed
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * 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, ...@@ -129,7 +129,7 @@ coerce_type(ParseState *pstate, Node *node, Oid inputTypeId,
/* safety check that we got the right thing */ /* safety check that we got the right thing */
if (exprType(result) != targetTypeId) if (exprType(result) != targetTypeId)
elog(ERROR, "coerce_type: conversion function %s produced %s", elog(ERROR, "coerce_type: conversion function %s produced %s",
typeTypeName(targetType), typeTypeName(targetType),
typeidTypeName(exprType(result))); typeidTypeName(exprType(result)));
/* /*
...@@ -320,6 +320,7 @@ TypeCategory(Oid inType) ...@@ -320,6 +320,7 @@ TypeCategory(Oid inType)
case (NAMEOID): case (NAMEOID):
case (BPCHAROID): case (BPCHAROID):
case (VARCHAROID): case (VARCHAROID):
case (BYTEAOID):
case (TEXTOID): case (TEXTOID):
case (LZTEXTOID): case (LZTEXTOID):
result = STRING_TYPE; result = STRING_TYPE;
...@@ -550,6 +551,7 @@ PromoteLesserType(Oid inType1, Oid inType2, Oid *newType1, Oid *newType2) ...@@ -550,6 +551,7 @@ PromoteLesserType(Oid inType1, Oid inType2, Oid *newType1, Oid *newType2)
{ {
case (BPCHAROID): case (BPCHAROID):
case (VARCHAROID): case (VARCHAROID):
case (BYTEAOID):
case (TEXTOID): case (TEXTOID):
case (INT2OID): case (INT2OID):
...@@ -614,6 +616,7 @@ PromoteLesserType(Oid inType1, Oid inType2, Oid *newType1, Oid *newType2) ...@@ -614,6 +616,7 @@ PromoteLesserType(Oid inType1, Oid inType2, Oid *newType1, Oid *newType2)
{ {
case (BPCHAROID): case (BPCHAROID):
case (VARCHAROID): case (VARCHAROID):
case (BYTEA):
case (TEXTOID): case (TEXTOID):
case (INT2OID): case (INT2OID):
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
* *
* *
* IDENTIFICATION * 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, ...@@ -536,6 +536,7 @@ convert_to_scalar(Datum value, Oid typid,
} }
case BPCHAROID: case BPCHAROID:
case VARCHAROID: case VARCHAROID:
case BYTEA:
case TEXTOID: case TEXTOID:
if (VARSIZE(DatumGetPointer(value)) > VARHDRSZ) if (VARSIZE(DatumGetPointer(value)) > VARHDRSZ)
{ {
...@@ -595,7 +596,7 @@ convert_to_scalar(Datum value, Oid typid, ...@@ -595,7 +596,7 @@ convert_to_scalar(Datum value, Oid typid,
return true; return true;
case TINTERVALOID: case TINTERVALOID:
{ {
TimeInterval interval = (TimeInterval) DatumGetPointer(value); TimeInterval interval = (TimeInterval) DatumGetPointer(value);
if (interval->status != 0) if (interval->status != 0)
{ {
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc * Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California * 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); ...@@ -673,8 +673,10 @@ extern int assertTest(int val);
* overhead. * overhead.
* *
* We got the 64 number by testing this against the stock memset() on * 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 * BSD/OS 3.0. Larger values were slower. bjm 1997/09/11
* could be a good deal higher for most platforms, actually --- tgl) *
* I think the crossover point could be a good deal higher for
* most platforms, actually. tgl 2000-03-19
*/ */
#define MemSet(start, val, len) \ #define MemSet(start, val, len) \
do \ do \
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc * Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California * 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 ...@@ -45,6 +45,7 @@ typedef enum CATEGORY
|| ((t) == BPCHAROID) \ || ((t) == BPCHAROID) \
|| ((t) == VARCHAROID) \ || ((t) == VARCHAROID) \
|| ((t) == TEXTOID) \ || ((t) == TEXTOID) \
|| ((t) == BYTEAOID) \
|| ((t) == INT4OID) \ || ((t) == INT4OID) \
|| ((t) == INT8OID) \ || ((t) == INT8OID) \
|| ((t) == FLOAT8OID) \ || ((t) == FLOAT8OID) \
...@@ -81,10 +82,16 @@ typedef enum CATEGORY ...@@ -81,10 +82,16 @@ typedef enum CATEGORY
#define IS_BINARY_COMPATIBLE(a,b) \ #define IS_BINARY_COMPATIBLE(a,b) \
(((a) == BPCHAROID && (b) == TEXTOID) \ (((a) == BPCHAROID && (b) == TEXTOID) \
|| ((a) == BPCHAROID && (b) == VARCHAROID) \ || ((a) == BPCHAROID && (b) == VARCHAROID) \
|| ((a) == BPCHAROID && (b) == BYTEAOID) \
|| ((a) == VARCHAROID && (b) == TEXTOID) \ || ((a) == VARCHAROID && (b) == TEXTOID) \
|| ((a) == VARCHAROID && (b) == BPCHAROID) \ || ((a) == VARCHAROID && (b) == BPCHAROID) \
|| ((a) == VARCHAROID && (b) == BYTEAOID) \
|| ((a) == TEXTOID && (b) == BPCHAROID) \ || ((a) == TEXTOID && (b) == BPCHAROID) \
|| ((a) == TEXTOID && (b) == VARCHAROID) \ || ((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) == INT4OID) \
|| ((a) == OIDOID && (b) == REGPROCOID) \ || ((a) == OIDOID && (b) == REGPROCOID) \
|| ((a) == INT4OID && (b) == OIDOID) \ || ((a) == INT4OID && (b) == OIDOID) \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment