Re: [PORTS] Port Bug Report: calling notify in pl/pgsql proc causes core dump
От | David Mansfield |
---|---|
Тема | Re: [PORTS] Port Bug Report: calling notify in pl/pgsql proc causes core dump |
Дата | |
Msg-id | Pine.LNX.4.04.9907081144450.28967-100000@spike.cobite.com обсуждение исходный текст |
Ответ на | Re: [PORTS] Port Bug Report: calling notify in pl/pgsql proc causes core dump (Bruce Momjian <maillist@candle.pha.pa.us>) |
Ответы |
Re: [PORTS] Port Bug Report: calling notify in pl/pgsql proc causes
core dump
Re: [PORTS] Port Bug Report: calling notify in pl/pgsql proc causes core dump |
Список | pgsql-ports |
> > Jan, this is yours. > Actually, I made a 'workaround' fix to this problem (after posting this bug report). I'll append the patch. I don't pretend to understand the internals of this system, but my guess is that a simple statement like 'notify xyz' went through the planner, got an spi_plan, but the 'plan list' was empty. So here's my patch, which may be fixing a symptom, not the cause, YMMV: --- pl_exec.c~ Wed May 26 03:07:39 1999 +++ pl_exec.c Fri Jun 25 11:00:53 1999 @@ -2482,6 +2482,10 @@ plan = (Plan *) lfirst(spi_plan->ptlist); + /* it would seem as though plan can be null... --DAVID */ + if (plan == NULL) + return; + /* ---------- * 2. It must be a RESULT plan --> no scan's required * ---------- > > > > > ============================================================================ > > POSTGRESQL BUG REPORT TEMPLATE > > ============================================================================ > > > > > > Your name : David Mansfield > > Your email address : david@cobite.com > > > > Category : runtime: back-end > > Severity : serious > > > > Summary: calling notify in pl/pgsql proc causes core dump > > > > System Configuration > > -------------------- > > Operating System : Linux 2.2.9 > > > > PostgreSQL version : 6.5 > > > > Compiler used : gcc 2.7.2.3 > > > > Hardware: > > --------- > > RedHat 5.2 > > > > Versions of other tools: > > ------------------------ > > RedHat 5.2 standard > > > > -------------------------------------------------------------------------- > > > > Problem Description: > > -------------------- > > calling notify in pl/pgsql proc causes core dump > > > > -------------------------------------------------------------------------- > > > > Test Case: > > ---------- > > createdb bugs > > psql bugs > > \i /usr/src/postgresql-6.5/src/pl/plpgsql/src/mklang.sql > > create function a_func() > > returns > > char > > as > > 'begin > > notify my_listen; > > return \'a\'; > > end;' > > language > > 'plpgsql' > > ; > > select a_func(); > > > > > > -------------------------------------------------------------------------- > > > > Solution: > > --------- > > > > > > -------------------------------------------------------------------------- > > > > > > > > > -- /==============================\ | David Mansfield | | david@cobite.com | \==============================/
В списке pgsql-ports по дате отправления: