Re: auto_explain logs ERROR: 08P01 for every query using bind variable

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: auto_explain logs ERROR: 08P01 for every query using bind variable
Дата
Msg-id 1968.1580490679@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: auto_explain logs ERROR: 08P01 for every query using bind variable  (Jeff Janes <jeff.janes@gmail.com>)
Список pgsql-bugs
Jeff Janes <jeff.janes@gmail.com> writes:
> On Fri, Jan 31, 2020 at 2:14 AM Ted Liu <ted_liu@yahoo.com> wrote:
>> For performance and security, most of our queries use bind variables. We
>> also implemented auto_explain for tracking down un-optimized queries. Our
>> database supports a large application. During the work-hours, there are
>> 30,000+ queries executed every hour. PostgreSQL logs rotates every hour and
>> each log contains 30,000+ error message like below.
>>
>> 2020-01-27 00:00:03 UTC:xxx.xx.0.189(35556):xxxxxx@xxxxxxdb:[130756]:ERROR:
>> ERROR: 08P01: bind message supplies 0 parameters, but prepared statement
>> "..." requires 1
>> 2020-01-27 00:00:03 UTC:xxx.xx.0.189(35558):xxxxxx@xxxxxxdb:[130756]:LOCATION:
>> exec_bind_message, postgres.c:1601
>> 2020-01-27 00:00:03 UTC:xxx.xx.0.189(35558):xxxxxx@xxxxxxdb:[130756]:STATEMENT:
>> EXPLAIN select ...,...,..,... from ... where ....=$1

> I agree they shouldn't be logged.  And I don't get such messages when using
> auto_explain with something like `pgbench -M prepared`.

Surely these are reporting a genuine client-side logic error.  You
need to fix your application, not complain about the fact that we're
reporting that it's broken.  (Note that auto_explain does NOT issue
"EXPLAIN" commands; it works at a lower level than that.  These
EXPLAIN commands are coming from a client application.)

If you really don't care to get log messages about incorrect queries,
you could always set log_min_messages higher than ERROR ...

            regards, tom lane



В списке pgsql-bugs по дате отправления:

Предыдущее
От: Ted Liu
Дата:
Сообщение: Re: auto_explain logs ERROR: 08P01 for every query using bindvariable
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #16184: Segmentation Fault during update