Skip site navigation (1) Skip section navigation (2)

Direct debug dialog hangs in OnSize()

From: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
To: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Direct debug dialog hangs in OnSize()
Date: 2012-04-19 20:42:17
Message-ID: 4F9078A9.6000801@enterprisedb.com (view raw or flat)
Thread:
Lists: pgadmin-hackers
When I build pgAdmin from sources on my laptop running Debian, and try 
to open the Direct Debug dialog by choosing "Debug" on a function, 
pgAdmin hangs, consuming 100% of CPU. The dialog never opens, and I have 
no choice but kill pgAdmin forcibly. I only get this problem when I 
build pgadmin from sources, the binary version from Debian repository 
works fine.

I complained about this same issue years ago, and it was apparently 
fixed back then 
(http://archives.postgresql.org/pgadmin-hackers/2009-04/msg00017.php) 
but looks like the issue has reappeared. Attaching a debugger to the 
process when it's hung, I get a stack trace identical to that I posted 
back in 2009. It's stuck repeatedly getting the OnSize event, and 
resizing the window or some of the controls in response.

I don't understand much about this stuff, but I started comparing the 
dlgDirectDbg window with dlgPgpassConfig window, which is very similar 
but works. Looks to me there's some useless nested panels in the 
dlgDirectDbg dialog, and removing them fixes the issue for me. After 
that, the size of the window is wrong, though, so I added some extra 
code to recalculate the desired window size after adding the arguments 
to the grid in the dialog. I'm not sure what the original problem was or 
why this fixes it, but the attached patch fixes it for me.

-- 
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com

Attachment: remove-useless-panels-from-dlgDirectDbg.patch
Description: text/x-diff (957 bytes)

Responses

pgadmin-hackers by date

Next:From: Heikki LinnakangasDate: 2012-04-19 20:43:40
Subject: Re: Direct debug dialog hangs in OnSize()
Previous:From: Guillaume LelargeDate: 2012-04-19 20:36:58
Subject: Re: 9.2 fix: spclocation is gone

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group