Обсуждение: (Maybe) helpful data surrounding crashes

Поиск
Список
Период
Сортировка

(Maybe) helpful data surrounding crashes

От
Erwin Brandstetter
Дата:
Hi developers! Hi Dave!

Testing pgAdmin v.1.8.2 (Feb 5 2008), rev: 7050, on WinXP; host: pg 8.2.6 on
Debian Etch

I have been having occasional crashes with pgAdmin 1.8.x. I still cannot pin
down the cause, it only happens like once on a busy day. They have something
in common: always when I click on an object in the object browser. This time,
after clicking on a schema (the first time since I connected to this
database, other databases of the same "server connection"-object already
open), while retrieving schema data.

Maybe it is of relevance that I have 12 different "server connection"-objects
in my object browser. Two of them were open before the crash.

Other programs do not normally crash on this machine.

This is the tail of my pgAdmin-Log before the crash:

-- pgAdmin log start --
(...)
2008-03-28 19:09:27 QUERY  : Set query (86.59.118.251:5432): SELECT oid,
format_type(oid, typtypmod) AS typname FROM pg_type
2008-03-28 19:09:27 QUERY  : Set query (86.59.118.251:5432): SELECT t.oid,
t.*, format_type(t.oid, null) AS alias, pg_get_userbyid(t.typowner) as
typeowner, e.typname as element, description, ct.oid AS taboid
   FROM pg_type t
   LEFT OUTER JOIN pg_type e ON e.oid=t.typelem
   LEFT OUTER JOIN pg_class ct ON ct.oid=t.typrelid AND ct.relkind <> 'c'
   LEFT OUTER JOIN pg_description des ON des.objoid=t.oid
  WHERE t.typtype != 'd' AND t.typname NOT LIKE E'\\_%%' AND t.typnamespace =
153217::oid
    AND ct.oid IS NULL
  ORDER BY t.typname
2008-03-28 19:09:27 QUERY  : Set query (86.59.118.251:5432): SELECT c.oid,
c.xmin, c.relname, pg_get_userbyid(c.relowner) AS viewowner, c.relacl,
description, pg_get_viewdef(c.oid, true) AS definition
   FROM pg_class c
   LEFT OUTER JOIN pg_description des ON (des.objoid=c.oid and des.objsubid=0)
  WHERE ((c.relhasrules AND (EXISTS (
            SELECT r.rulename FROM pg_rewrite r
             WHERE ((r.ev_class = c.oid)
               AND (bpchar(r.ev_type) = '1'::bpchar)) ))) OR (c.relkind =
'v'::char))
    AND relnamespace = 153217::oid
  ORDER BY relname
2008-03-28 19:09:27 STATUS : Retrieving Schema details... (0.23 secs)
-- pgAdmin log end --


BTW: 1 '%' is redundant here: ... t.typname NOT LIKE E'\\_%%' ...


Regards
Erwin

Re: (Maybe) helpful data surrounding crashes

От
"Dave Page"
Дата:
On Fri, Mar 28, 2008 at 9:21 PM, Erwin Brandstetter
<brandstetter@falter.at> wrote:
> Hi developers! Hi Dave!
>
>  Testing pgAdmin v.1.8.2 (Feb 5 2008), rev: 7050, on WinXP; host: pg 8.2.6 on
>  Debian Etch
>
>  I have been having occasional crashes with pgAdmin 1.8.x. I still cannot pin
>  down the cause, it only happens like once on a busy day. They have something
>  in common: always when I click on an object in the object browser. This time,
>  after clicking on a schema (the first time since I connected to this
>  database, other databases of the same "server connection"-object already
>  open), while retrieving schema data.
>
>  Maybe it is of relevance that I have 12 different "server connection"-objects
>  in my object browser. Two of them were open before the crash.

I've fixed the redundant %'s you mentioned, and fixed some other
subtle bugs that could have caused crashes in some specific
circumstances (got any objects with % in the name?). Not sure what
else to try unless you want to try getting intimate with a debugger
:-p

--
Dave Page
EnterpriseDB UK Ltd: http://www.enterprisedb.com
PostgreSQL UK 2008 Conference: http://www.postgresql.org.uk

Re: (Maybe) helpful data surrounding crashes

От
Erwin Brandstetter
Дата:
dpage@pgadmin.org wrote:
> I've fixed the redundant %'s you mentioned, and fixed some other
> subtle bugs that could have caused crashes in some specific
> circumstances (got any objects with % in the name?). Not sure what
> else to try unless you want to try getting intimate with a debugger
> :-p

Thanks for your attention to the details. I strictly stick to
non-quoted-7Bit-ASCII-lowercase-letters-only-oldschool names, for I am
afraid of ghosts. So, no, no % in my names. pgAdmin wouldn't get a
chance to choke on % in comments or in the body of views or functions,
would it?
And even if I'd get all flirtatious with a debugger, which I don't have
the time for right now, I'd still have to be able to reproduce the crash.

Regards
Erwin

P.S.: I do remember a crash case involving a '%' being sent through a
"fprint variant" (rev. 5932), though. Ah, the old days! Beer was cheap
and bugs reproducible back then ...

Re: (Maybe) helpful data surrounding crashes

От
"Dave Page"
Дата:
On Tue, Apr 1, 2008 at 3:52 AM, Erwin Brandstetter
<brandstetter@falter.at> wrote:
> dpage@pgadmin.org wrote:
>  > I've fixed the redundant %'s you mentioned, and fixed some other
>  > subtle bugs that could have caused crashes in some specific
>  > circumstances (got any objects with % in the name?). Not sure what
>  > else to try unless you want to try getting intimate with a debugger
>  > :-p
>
>  Thanks for your attention to the details. I strictly stick to
>  non-quoted-7Bit-ASCII-lowercase-letters-only-oldschool names, for I am
>  afraid of ghosts. So, no, no % in my names. pgAdmin wouldn't get a
>  chance to choke on % in comments or in the body of views or functions,
>  would it?

No, shouldn't do.

>  And even if I'd get all flirtatious with a debugger, which I don't have
>  the time for right now, I'd still have to be able to reproduce the crash.

when you have a debugger installed it should offer you the chance to
debug as soon as it crashes. You'd just need the right debug symbols
to hand.

>  P.S.: I do remember a crash case involving a '%' being sent through a
>  "fprint variant" (rev. 5932), though. Ah, the old days! Beer was cheap
>  and bugs reproducible back then ...

Err, yeah. That's kinda what I fixed yesterday (I found a few more cases :-( ).


--
Dave Page
EnterpriseDB UK Ltd: http://www.enterprisedb.com
PostgreSQL UK 2008 Conference: http://www.postgresql.org.uk