We are working on improve this for 8.1. I assume you are talking about
protocol prepare rather than the PREPARE statement, which should be
logged.
Even in 8.1 we don't log the bind values, but we should.
---------------------------------------------------------------------------
Jon Jensen wrote:
> PostgreSQL folks,
>
> It appears that even with the most verbose logging options enabled,
> PostgreSQL logs prepared queries like this:
>
> select * from transactions where code = $1
>
> And never logs the bind values that correspond to $1, etc.
>
> This instance I noticed is under PostgreSQL 7.4, both with fairly
> default logging settings and with these settings in an attempt to
> maximize the detail level:
>
> log_min_messages = debug5
> log_error_verbosity = verbose
> log_min_error_statement = debug5
> log_min_duration_statement = -1
> log_connections = true
> log_disconnections = true
> log_duration = true
> log_statement = 'all'
> log_hostname = false
>
> I checked the docs for Pg 7.4 and 8.0, and didn't see any indication that
> this is configurable.
>
> Is it true that there is no option to log prepared query bind values? If
> so, would a patch that enables this, either always or via a configuration
> option, be welcome? Without the bind values, I am unable to retrace events
> and discover the causes of problems.
>
> Thanks,
> Jon
>
> --
> Jon Jensen
> End Point Corporation
> http://www.endpoint.com/
>
> ---------------------------(end of broadcast)---------------------------
> TIP 9: In versions below 8.0, the planner will ignore your desire to
> choose an index scan if your joining column's datatypes do not
> match
>
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073