function within a function/rollbacks/exception handling

Поиск
Список
Период
Сортировка
От Lori Corbani
Тема function within a function/rollbacks/exception handling
Дата
Msg-id 4542636FF9185340AC1FDDE71BF1992B1F7D11A5@jaxbhexms01.jax.org
обсуждение исходный текст
Ответы Re: function within a function/rollbacks/exception handling
Re: function within a function/rollbacks/exception handling
Список pgsql-general
I have a function, call it 'functionMain'.  And I have several tables that each have trigger functions.  Each trigger
functionneeds to call 'functionMain' (with different parameters). 

table A => trigger function A ==> functionMain
table B => trigger function B ==> functionMain
table C => trigger function C ==> functionMain

'functionMain' returns VOID (runs an insert statement). and has an exception/raise exception block.

An insert transaction for table A is launched (insertA), trigger function A is called,
'functionMain' is called and 'functionMain' fails.  Hence, trigger function A needs to rollback.

Questions:

a) I am assuming that the trigger functions should use 'PERFORM functionMain(....)'?

b) if 'functionMain' fails, then 'funtionMain' automatically performs an implicit rollback, correct?

c) if 'functionMain' fails, should the trigger function also contain an exception handler
   or will the rollback from 'functionMain' cascade up to the original transaction (insertA)?

Thanks.
Lori

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

Предыдущее
От: Leonardo Carneiro
Дата:
Сообщение: Is *.projects.postgresql.org offline?
Следующее
От: Devrim GÜNDÜZ
Дата:
Сообщение: Re: Is *.projects.postgresql.org offline?