From: | Manoj Kumar <manojkumar(at)temenos(dot)com> |
---|---|
To: | Justin Pryzby <pryzby(at)telsasoft(dot)com> |
Cc: | "pgsql-performance(at)postgresql(dot)org" <pgsql-performance(at)postgresql(dot)org> |
Subject: | RE: Re: PostgreSQL blocked locks query |
Date: | 2021-05-14 06:51:36 |
Message-ID: | SJ0PR04MB7662B06B20F5B8EDF534BB94D9509@SJ0PR04MB7662.namprd04.prod.outlook.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
Hi ,
Thank you for the reply. Is there a similar way to extract the same from a SQL command ?
Thanks
-----Original Message-----
From: Justin Pryzby <pryzby(at)telsasoft(dot)com>
Sent: Thursday, May 13, 2021 10:09 PM
To: Manoj Kumar <manojkumar(at)temenos(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: [EXT MSG] Re: PostgreSQL blocked locks query
EXTERNAL source. Be CAREFUL with links / attachments
On Thu, May 13, 2021 at 01:54:32PM +0000, Manoj Kumar wrote:
> I have query in terms of lock monitoring in PostgreSQL where I am not able to find a way to figure out what value has been passed in SQL statement (from JDBC driver as prepared statement).
>
> I am using PostgreSQL 13 version.
>
> The following is the SQL statement I am running in PGAdmin
>
> The output I am getting is below, where in the SQL query is with $1.
>
> [cid:image001(dot)png(at)01D74810(dot)4207C100]
>
> Is there a way to compute what is being passed as value for the above SQL statement ?
You should enable query logging, and pull the params out of the log.
Note that v13 has log_parameter_max_length, which defaults to showing params in full.
[pryzbyj(at)telsasoft2019 ~]$ PGOPTIONS='-c log_min_duration_statement=0 -c client_min_messages=debug' python3 -c "import pg; db=pg.DB('postgres'); q=db.query('SELECT \$1', 1)"
DEBUG: loaded library "auto_explain"
DEBUG: parse <unnamed>: SELECT $1
LOG: duration: 0.230 ms parse <unnamed>: SELECT $1
DEBUG: bind <unnamed> to <unnamed>
LOG: duration: 0.141 ms bind <unnamed>: SELECT $1
DETAIL: parameters: $1 = '1'
LOG: duration: 0.029 ms execute <unnamed>: SELECT $1
DETAIL: parameters: $1 = '1'
--
Justin
The information in this e-mail and any attachments is confidential and may be legally privileged. It is intended solely for the addressee or addressees. Any use or disclosure of the contents of this e-mail/attachments by a not intended recipient is unauthorized and may be unlawful. If you have received this e-mail in error please notify the sender. Please note that any views or opinions presented in this e-mail are solely those of the author and do not necessarily represent those of TEMENOS. We recommend that you check this e-mail and any attachments against viruses. TEMENOS accepts no liability for any damage caused by any malicious code or virus transmitted by this e-mail.
From | Date | Subject | |
---|---|---|---|
Next Message | Marcin Gozdalik | 2021-05-14 11:06:33 | Very slow "bloat query" |
Previous Message | David Rowley | 2021-05-13 23:52:33 | Re: BUG #16968: Planner does not recognize optimization |