[pgpool-general-jp: 1714] Re: escape_string_warning = offを設定したPostgreSQLへpgpoolで接続した場合の挙動について
Tatsuo Ishii
ishii @ sraoss.co.jp
2022年 11月 23日 (水) 22:24:59 JST
神谷様
> 石井様
>
> お世話になります。
> 神谷と申します。
>
>> このワーニングはPgpool-IIが出しています。standard_conforming_strings =
>> offの場合、今の所、これを止める方法はありません。(次回以降のリリース
>> で修正するかも知れません)
>
> 承知いたしました。
> すごく困っているわけではないことと、
> standard_conforming_strings = offで運用することがよくないことだと思っ
> ておりますので、
> 大丈夫です。
申し訳ありませんが、よろしくお願いします。
>>> PosgtreSQLが11のときはpgpool経由でもHINTとWARNINGは出力されませんでし
>>> た。
>> 何かの間違いではないでしょうか?このあたりのpgpoolの動作は、PostgreSQL
>> が11でも15でも変わりないはずです。PostgreSQL 11のときには、
>> standard_conforming_strings = onにしていた、とかではありませんか?
>
> PosgtreSQL11のstandard_conforming_stringsはoffであることを確認しました。
> 「PosgtreSQLを11系から15系にVerUPした後」と記載しましたが、誤っており
> ました。
> 「Psqlを11から15にVerUPした後」でした。
> 以下にログを記載いたします。
>
>
> [postgres @ localhost ~]$ /usr/pgsql-11/bin/psql -p 9999
> psql (11.17)
> "help" でヘルプを表示します。
>
> postgres=# select * from pg_
> Display all 229 possibilities? (y or n)
> postgres=# select * from pg_^C
> postgres=# \q
> [postgres @ localhost ~]$ /usr/pgsql-15/bin/psql -p 9999
> psql (15.0、サーバー 11.17)
> "help"でヘルプを表示します。
>
> postgres=# select * from pg_WARNING: nonstandard use of \\ in a string
> literal
> HINT: Use the escape string syntax for backslashes, e.g., E'\\'.
> WARNING: nonstandard use of \\ in a string literal
> HINT: Use the escape string syntax for backslashes, e.g., E'\\'.
> WARNING: nonstandard use of \\ in a string literal
> HINT: Use the escape string syntax for backslashes, e.g., E'\\'.
> WARNING: nonstandard use of \\ in a string literal
> HINT: Use the escape string syntax for backslashes, e.g., E'\\'.
>
> Display all 229 possibilities? (y or n)
>
>
> 上記のとおり、/usr/pgsql-11/bin/psqlでは、pg_の後にTABしてもWARNINGが
> でませんが、
> /usr/pgsql-15/bin/psqlでは、WARNINGがでます。
なるほど。
これは、11と15のpsqlのタブ補完の実装の違いによるものですね。11では、タ
ブ補完のためのSQL中の文字列リテラルの中でバックスラッシュを使っていな
いので、ワーニングが出ないわけです。
--
Tatsuo Ishii
SRA OSS LLC
English: http://www.sraoss.co.jp/index_en/
Japanese:http://www.sraoss.co.jp
pgpool-general-jp メーリングリストの案内