Thread: 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]). 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
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 en= ough memory." error, it just fails to perform the specified command when th= e cmd.exe code page is set to 65001. -----Original Message----- From: Bruce Momjian [mailto:bruce@momjian.us]=20 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 co= nsole Wow, that is odd. Can you get us a backtrace of psql in that case? --------------------------------------------------------------------------- Gavin Kistner wrote: >=20 > The following bug has been logged online: >=20 > 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:=20 >=20 > 1. Create registry key "HKEY_LOCAL_MACHINE\Software\Microsoft\Command > Processor\Autorun" with value "@chcp 65001>nul" to set Windows console=20 > to > UTF8 (see url[1]). >=20 > 2. Open a new cmd.exe window >=20 > 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. >=20 > 4. Type "\dt" >=20 > EXPECTED: List of tables. > ACTUAL: "Not enough memory." displayed. >=20 > 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. >=20 > 4. Type "\dt" > --> List of tables is properly displayed >=20 > [1] http://superuser.com/questions/269818 >=20 > -- > Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make=20 > changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-bugs --=20 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 dist= ribution is prohibited. If you are not the intended recipient, please contact the s= ender by reply email and destroy all copies of the original message. ---------------------------------------------------------------------------= --------