Hi,

On Thu, Dec 19, 2013 at 1:26 AM, Campbell, Lance <la...@illinois.edu> wrote:

>  pgAdmin 3 1.18.1
>
> PostgreSQL 9.2
>
> I am having issues with a query getting “stuck” while doing updates.  So I
> went to Server Status in pgAdmin.  I found the query was highlighted in
> dark orange.  When a query appears to get hung up and won’t finish what
> steps should I take to figure out what is happening?
>
>
I believe, pgAdmin support of blocked/waiting queries. If a query got
stuck, then use the tool to check whether it is waiting on other
transaction or not.

OR

Use this query to get that information.

SELECT now()::timestamp,waiting.locktype AS
waiting_locktype,waiting.relation::regclass::VARCHAR AS
waiting_table,waiting_stm.Datname as WDatabase,waiting_stm.current_query
AS waiting_query,(extract(epoch
from now())­extract(epoch from waiting_stm.query_start))::VARCHAR AS
Waiting_Stmt_Total_Time,waiting.mode AS waiting_mode,waiting.pid::VARCHAR
AS waiting_pid,other.locktype::VARCHAR AS
other_locktype,other.relation::regclass::VARCHAR   AS
other_table,other_stm.Datname::VARCHAR as
ODatabase,other_stm.current_query AS other_query,(extract(epoch from
now())­extract(epoch from other_stm.query_start))::VARCHAR AS
Other_Stmt_Total_Time,other.mode AS other_mode,other.pid::VARCHAR AS
other_pid,other.granted::VARCHAR AS other_granted FROM
pg_catalog.pg_locks AS waiting JOIN pg_catalog.pg_stat_activity AS
waiting_stm ON (waiting_stm.procpid = waiting.pid) JOIN pg_catalog.pg_locks
AS other On ((waiting.database = other.database AND waiting.relation  =
other.relation) OR waiting.transactionid =
other.transactionid) JOIN pg_catalog.pg_stat_activity AS other_stm ON
(other_stm.procpid = other.pid) WHERE NOT waiting.granted AND waiting.pid
<> other.pid;


>
> I have checked the database logs and there does not seem to be an issue.
> Is there some way I could tell PostgreSQL through pgAdmin to give me more
> information on why the query is stuck?  Is there a way to get more analytic
> information on the query while it is running?
>
>
>

By enabling this parameter "log_lock_waits" in the postgresql.conf, we will
get locks information in pg_logs.


>
> Thanks,
>
>
>
> Lance Campbell <http://illinois.edu/person/lance>
>
> Software Architect
>
> Web Services at Public Affairs
>
> 217-333-0382
>
> [image: University of Illinois at Urbana-Champaign logo]<http://illinois.edu/>
>
>
>
>
>

<<image003.png>>

Reply via email to