BUG #6161: Not enough memory error in psql with UTF8 console
The following bug has been logged online:
Bug reference: 6161
Logged by: Gavin Kistner
Email address: gkistner@nvidia.com
PostgreSQL version: 9.0.4
Operating system: Windows 7x64
Description: Not enough memory error in psql with UTF8 console
Details:
1. Create registry key "HKEY_LOCAL_MACHINE\Software\Microsoft\Command
Processor\Autorun" with value "@chcp 65001>nul" to set Windows console to
UTF8 (see url[1]http://superuser.com/questions/269818).
2. Open a new cmd.exe window
3. Connect to a simple database using psql.exe
--> Text displayed:
WARNING: Console code page (65001) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.
4. Type "\dt"
EXPECTED: List of tables.
ACTUAL: "Not enough memory." displayed.
5. \q and close the cmd.exe window.
6. Delete the Autorun registry key.
7. Repeat steps 2-3
--> Text displayed:
WARNING: Console code page (437) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.
4. Type "\dt"
--> List of tables is properly displayed
Wow, that is odd. Can you get us a backtrace of psql in that case?
---------------------------------------------------------------------------
Gavin Kistner wrote:
The following bug has been logged online:
Bug reference: 6161
Logged by: Gavin Kistner
Email address: gkistner@nvidia.com
PostgreSQL version: 9.0.4
Operating system: Windows 7x64
Description: Not enough memory error in psql with UTF8 console
Details:1. Create registry key "HKEY_LOCAL_MACHINE\Software\Microsoft\Command
Processor\Autorun" with value "@chcp 65001>nul" to set Windows console to
UTF8 (see url[1]).2. Open a new cmd.exe window
3. Connect to a simple database using psql.exe
--> Text displayed:
WARNING: Console code page (65001) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.4. Type "\dt"
EXPECTED: List of tables.
ACTUAL: "Not enough memory." displayed.5. \q and close the cmd.exe window.
6. Delete the Autorun registry key.
7. Repeat steps 2-3
--> Text displayed:
WARNING: Console code page (437) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.4. Type "\dt"
--> List of tables is properly displayed[1] http://superuser.com/questions/269818
--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ It's impossible for everything to be true. +
I'm not a PSQL dev, just a normal user. If you let me know how to get you a backtrace, I'd be happy to help.
Here are simpler repro steps (no registry hacking required):
https://gist.github.com/1142428
Note the last line - the psql binary doesn't quit or crash with the "Not enough memory." error, it just fails to perform the specified command when the cmd.exe code page is set to 65001.
-----Original Message-----
From: Bruce Momjian [mailto:bruce@momjian.us]
Sent: Tuesday, August 16, 2011 7:35 AM
To: Gavin Kistner
Cc: pgsql-bugs@postgresql.org
Subject: Re: [BUGS] BUG #6161: Not enough memory error in psql with UTF8 console
Wow, that is odd. Can you get us a backtrace of psql in that case?
---------------------------------------------------------------------------
Gavin Kistner wrote:
The following bug has been logged online:
Bug reference: 6161
Logged by: Gavin Kistner
Email address: gkistner@nvidia.com
PostgreSQL version: 9.0.4
Operating system: Windows 7x64
Description: Not enough memory error in psql with UTF8 console
Details:1. Create registry key "HKEY_LOCAL_MACHINE\Software\Microsoft\Command
Processor\Autorun" with value "@chcp 65001>nul" to set Windows console
to
UTF8 (see url[1]).2. Open a new cmd.exe window
3. Connect to a simple database using psql.exe
--> Text displayed:
WARNING: Console code page (65001) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.4. Type "\dt"
EXPECTED: List of tables.
ACTUAL: "Not enough memory." displayed.5. \q and close the cmd.exe window.
6. Delete the Autorun registry key.
7. Repeat steps 2-3
--> Text displayed:
WARNING: Console code page (437) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.4. Type "\dt"
--> List of tables is properly displayed[1] http://superuser.com/questions/269818
--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make
changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ It's impossible for everything to be true. +
-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information. Any unauthorized review, use, disclosure or distribution
is prohibited. If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------