X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by postgresql.org (Postfix) with ESMTP id 09F679DCAE5 for ; Sat, 10 Dec 2005 22:18:06 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 96475-07 for ; Sat, 10 Dec 2005 22:18:10 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey- Received: from candle.pha.pa.us (candle.pha.pa.us [64.139.89.126]) by postgresql.org (Postfix) with ESMTP id 520149DCAB8 for ; Sat, 10 Dec 2005 22:18:04 -0400 (AST) Received: (from pgman@localhost) by candle.pha.pa.us (8.11.6/8.11.6) id jBB2I0V18560; Sat, 10 Dec 2005 21:18:00 -0500 (EST) From: Bruce Momjian Message-Id: <200512110218.jBB2I0V18560@candle.pha.pa.us> Subject: Re: Upcoming PG re-releases In-Reply-To: <200512101850.41863.xzilla@users.sourceforge.net> To: Robert Treat Date: Sat, 10 Dec 2005 21:18:00 -0500 (EST) CC: pgsql-hackers@postgresql.org, Martijn van Oosterhout , Gregory Maxwell , Gavin Sherry , Peter Eisentraut X-Mailer: ELM [version 2.4ME+ PL121 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=0.007 required=5 tests=[AWL=0.007] X-Spam-Score: 0.007 X-Spam-Level: X-Archive-Number: 200512/558 X-Sequence-Number: 77406 I don't see it asked very often, and I think our 8.1 releae note addition (plus a mention in the 8.1.1 notes) will complete this. --------------------------------------------------------------------------- Robert Treat wrote: > Was thinking if someone could summarize this all it would make a really good > FAQ entry. > > Robert Treat > > On Friday 09 December 2005 13:28, Martijn van Oosterhout wrote: > > On Fri, Dec 09, 2005 at 12:38:21PM -0500, Bruce Momjian wrote: > > > > This means someone who is planning on upgrading to 8.1 in two months > > > > can use this function now to weed out the bad data before the upgrade > > > > even starts. > > > > > > Oh, so you back-load it into the old database. Interesting. I assume > > > to be useful you would have to write something that checked every column > > > values in every table and database. > > > > Umm, yeah. I was thinking about how to do that. pl/pgsql is not the > > best language to do that in. In any case I found a bug in the version I > > posted and also added a function that does: > > > > test=# select * from db_utf8_verify(); > > tab | fld | location > > ------+-----+---------- > > tbl1 | foo | (12,3) > > (1 row) > > > > It gives the table, field and ctid of any values that failed. It skips > > pg_catalog. It's also *really* slow for long strings. Just executing it > > on the pg_rewrite in the default installation takes forever. If someone > > really wanted this for a large database maybe they should recode it in > > C. > > > > http://svana.org/kleptog/pgsql/utf8_verify.sql > > > > Have a nice day, > > -- > Robert Treat > Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073