Re: [RFC] obtaining the function call stack

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: [RFC] obtaining the function call stack
Дата
Msg-id 4A5B8DE8.4070406@enterprisedb.com
обсуждение исходный текст
Ответ на [RFC] obtaining the function call stack  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-hackers
Alvaro Herrera wrote:
> This is a preliminary request for comments on obtaining a function call
> stack.  I've been trying to dodge the issue by exporting elog.c internal
> state (errcontext), but that turns out to be unfeasible and it's such a
> horrid kludge anyway.
> 
> So, the idea is to have a stack maintained by the function manager; each
> called function enters an element in it containing the interesting
> information about the function.  We'd have another function that would
> return this stack as a result set.  (With this arrangement, the topmost
> element would always appear to be this "peek" function.)
> 
> I haven't looked at the code to see how this would actually be
> implemented, so I don't have more details to offer.  Does anybody have
> opinions on the matter?

FWIW, pldebugger obtains a function call stack by peeking into the error
context stack. It only includes PLpgSQL functions, and it's ugly and
hacky. Something cleaner would simplify pldebugger, although it's always
going to be hacky since it needs to understand quite a lot about PLpgSQL
internal structures to display variables and stuff.

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


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Pavel Stehule
Дата:
Сообщение: Re: [RFC] obtaining the function call stack
Следующее
От: "Kevin Grittner"
Дата:
Сообщение: Re: Alpha release process