The following bug has been logged online:
Bug reference: 6271
Logged by: Shannon
Email address: shannon@arc.net.au
PostgreSQL version: 8.4.9
Operating system: Gentoo Linux 64bit
Description: psql -f reporting unexpected syntax errors on first
command
Details:
Given the following 2 line SQL script in a file:
--- test.sql ---
SHOW client_encoding;
SHOW client_encoding;
----------------
$ psql -ftest.sql -U postgres template1
psql:test.sql:1: ERROR: syntax error at or near "SHOW"
LINE 1: SHOW client_encoding;
^
client_encoding
-----------------
UTF8
(1 row)
See what happened there? The first line is treated as a syntax error and the
second line works which is insane because the two lines are identical!
I've tried:
* Adding empty lines and/or comments to the top of the file
* Setting PGCLIENTENCODING in the shell to a variety of values including
UTF8, SQL_ASCII and LATIN1
* Other commands
What works:
* Every line except the one with the first command
* Piping a string into psql stdin
* Using psql interactively
Other factors:
Could this be related to my locale?
$ locale
LANG=en_AU.utf8
LC_CTYPE="en_AU.utf8"
LC_NUMERIC="en_AU.utf8"
LC_TIME="en_AU.utf8"
LC_COLLATE="en_AU.utf8"
LC_MONETARY="en_AU.utf8"
LC_MESSAGES="en_AU.utf8"
LC_PAPER="en_AU.utf8"
LC_NAME="en_AU.utf8"
LC_ADDRESS="en_AU.utf8"
LC_TELEPHONE="en_AU.utf8"
LC_MEASUREMENT="en_AU.utf8"
LC_IDENTIFICATION="en_AU.utf8"
LC_ALL=