Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Mario Splivalo <mario(dot)splivalo(at)megafon(dot)hr>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns
Date: 2008-11-10 15:48:00
Message-ID: 7011.1226332080@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Mario Splivalo <mario(dot)splivalo(at)megafon(dot)hr> writes:
> I have this issue:
> postgres=# select E'\xc5\x53\x94\x96\x83\x29';
> ERROR: invalid byte sequence for encoding "UTF8": 0xc553

This is expected since the string is not valid as text.

> I'm using the above mentioned string to store data into bytea column. I
> did pg_dump of the database on postgres 8.2, and then tried to restore
> it on postgres 8.3, and I got this error. The actuall line that produces
> error is like this:

> INSERT INTO vpn_payins_bitfield (vpn_id, payload_pattern, encription,
> encription_key, charset, amount_width, shop_width, counter_width) VALUES
> (3, E'\\W*(\\w+)(?:\\W+(.*))?', 'RC4',
> E'\xc5\x53\x94\x96\x83\x29'::bytea, 'ABCDEGHIKLMOPTWX', 16, 8, 16);

Exactly what version of pg_dump are you using? What I get from pg_dump
doesn't look like that. Bytea fields with -D look more like this:

INSERT INTO foo (f1) VALUES ('\\305S\\224\\226\\203)');

regards, tom lane

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Mario Splivalo 2008-11-10 16:14:52 Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns
Previous Message Fernando Hevia 2008-11-10 15:30:22 Re: Subsorting GROUP BY data