Re: Initial refactoring of plperl.c - rebased [PATCH]
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: Tim Bunce <Tim.Bunce@pobox.com>
Cc: pgsql-hackers@postgresql.org
Date: 2010-01-04T23:38:03Z
Lists: pgsql-hackers
Andrew Dunstan wrote: >> >> Yes. I believe the test is highlighting an existing problem: that plperl >> function in non-PG_UTF8 databases can't use regular expressions that >> require unicode character meta-data. >> >> Either the (GetDatabaseEncoding() == PG_UTF8) test in plperl_safe_init() >> should be removed, so the utf8fix function is always called, or the >> test should be removed (or hacked to only apply to PG_UTF8 databases). >> > > > I tried forcing the test, but it doesn't seem to work, possibly > because in the case that the db is not utf8 we aren't forcing argument > strings to UTF8 :-( > > I think we might need to remove the test from the patch. > > I have not been able to come up with a fix for this - the whole thing seems very fragile. I'm going to commit what remains of this patch, but not add the extra regression test. I'll add a TODO to allow plperl to do utf8 operations in non-utf8 databases. cheers andrew