Am 23.11.2015 um 04:54 schrieb D'Arcy J.M. Cain:
Enjoy the beer. You deserve it after all that work. Unfortunately I
am still getting errors. On a NetBSD current system I get the attached
errors. On a Linus box (Xubuntu) I get a seg fault. I guess it has
something to do with my locale but I thought that you set all that.
Yes, the test fixtures set the client_encoding and locale. However, the
tests don't change the encoding and locale of the test database.
So I think this has something to do with the encoding and locale with
which the test database has been set up. You can see it with "psql -l".
I have set up my databases with UTF8, which was the default on my
systems. Now I remember you said you were using ascii databases.
So I tried with a database using sql_ascii as encoding and C locale and
could reproduce errors of the kind you're seeing:
createdb unittest -T template0 -E sql_ascii -l C -e sql_ascii
Note that sql_ascii is a special since it means "no encoding" for
non-ascii chars, i.e. you can see raw data that the client cannot
handle. That's why you normally should not use it and utf8 is the
default. Also note that the "Euro" sign used when outputting money
values with German local in one of the tests *is* non-ascii, and there
are also other tests with non-ascii characters.
Another place where this can cause problems is when using the COPY
command to shuffle data between stdin, stdout and the database. In this
case you can see inserttable and getline/putline tests failing or
segfault because of incompatible encodings.
I'll definitely look into this when I have more time again.
-- Christoph
_______________________________________________
PyGreSQL mailing list
[email protected]
https://mail.vex.net/mailman/listinfo.cgi/pygresql