From: | Neha Sharma <neha(dot)sharma(at)enterprisedb(dot)com> |
---|---|
To: | PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | [EUC_CN] Failed to connect through user created user/database using simplified Chinese characters |
Date: | 2019-12-05 10:51:12 |
Message-ID: | CANiYTQsj8SpMQHtyB=iE_XeVfpLUZDwb=tX-JuMBxr4NwtWMAA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
It was observed that when we try to connect through a user/database created
using
simplified Chinese characters on EUC_CN server_encoding, it fails giving
error that
the object does not exists. Whereas if we query the system table we can
find their entries
there.
Data setup:
.) set the locale to zh_CN.UTF8
[neha(at)localhost bin]$ locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC=zh_CN.UTF-8
LC_TIME=zh_CN.UTF-8
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY=zh_CN.UTF-8
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER=zh_CN.UTF-8
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT=zh_CN.UTF-8
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
.) Perform initdb
[neha(at)localhost bin]$ ./initdb -D /tmp/data --locale=zh_CN
Observation:
postgres=# show server_encoding ;
server_encoding
-----------------
EUC_CN
(1 行记录)
postgres=# show client_encoding ;
client_encoding
-----------------
UTF8
(1 行记录)
postgres=# create user 伐角 with password '规';
CREATE ROLE
postgres=# create database 谨角 ;
CREATE DATABASE
postgres=# alter role 伐角 with login ;
ALTER ROLE
postgres=# \c - 伐角
FATAL: role "伐角" does not exist
Previous connection kept
postgres=# \c 谨角
FATAL: database "谨角" does not exist
Previous connection kept
postgres=# select * from pg_user where usename='伐角';
usename | usesysid | usecreatedb | usesuper | userepl | usebypassrls |
passwd | valuntil | useconfig
---------+----------+-------------+----------+---------+--------------+----------+----------+-----------
伐角 | 16384 | f | f | f | f |
******** | |
(1 row)
postgres=# select * from pg_database where datname='谨角';
datname | datdba | encoding | datcollate | datctype | datistemplate |
datallowconn | datconnlimit | datlastsysoid | datfrozenxid | datminmxid |
dattablespace | datacl
---------+--------+----------+------------+----------+---------------+--------------+--------------+---------------+--------------+------------+---------------+--------
谨角 | 10 | 2 | zh_CN | zh_CN | f | t
| -1 | 13286 | 561 | 1 |
1663 |
(1 row)
Just wondering, is there anything wrong I am doing or it's a bug?
Thanks.
--
Regards,
Neha Sharma
From | Date | Subject | |
---|---|---|---|
Next Message | Daniel Gustafsson | 2019-12-05 11:09:04 | Re: Removal of support for OpenSSL 0.9.8 and 1.0.0 |
Previous Message | Amit Kapila | 2019-12-05 10:50:18 | Re: logical decoding : exceeded maxAllocatedDescs for .spill files |