Re: Bytea string operator support - Mailing list pgsql-patches

From Joe Conway
Subject Re: Bytea string operator support
Date
Msg-id 031c01c13768$f1adf300$0705a8c0@jecw2k1
Whole thread Raw
In response to Re: Bytea string operator support  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-patches
> > > > Here's a patch for bytea string functions. As discussed:
> > > >
> > > > text encode(bytea, 'escape')
> > > > bytea decode(text, 'escape')
> > >
> > > Why are you using \xxx encoding there?  As the 'escape' encoding
> > > is supposed to be 'minimalistic' as it escapes only 2
> > > problematic values, then IMHO it would be better to use
> > > \0 and \\ as escapes - takes less room.
> >
> > Agreed, and I have documented this in the SGML pages.  Knowing this,
> > bytea becomes a much easier format to use.
>
> No problem -- I kind of like the octal style better, but I can see your
> point. I'll wait for awhile for more comments, and then send in a new
patch.

Here's a revised patch. Changes:

1. Now outputs '\\' instead of '\134' when using encode(bytea, 'escape')
Note that I ended up leaving \0 as \000 so that there are no ambiguities
when decoding something like, for example, \0123.

2. Fixed bug in byteain which allowed input values which were not valid
octals (e.g. \789), to be parsed as if they were octals.

Joe


Attachment

pgsql-patches by date:

Previous
From: Barry Lind
Date:
Subject: Re: JDBC patch procedures (Re: Patch for jdbc2 ResultSet.java)
Next
From: Bruce Momjian
Date:
Subject: Re: Support building in a different directory on Solaris