On 2018-Oct-08, Michael Paquier wrote: > Hi Alvaro, > > On Sat, Oct 06, 2018 at 10:18:46PM +0000, Alvaro Herrera wrote: > > Fix event triggers for partitioned tables > > > > Index DDL cascading on partitioned tables introduced a way for ALTER > > TABLE to be called reentrantly. This caused an an important deficiency > > in event trigger support to be exposed: on exiting the reentrant call, > > the alter table state object was clobbered, causing a crash when the > > outer alter table tries to finalize its processing. Fix the crash by > > creating a stack of event trigger state objects. There are still ways > > to cause things to misbehave (and probably other crashers) with more > > elaborate tricks, but at least it now doesn't crash in the obvious > > scenario. > > This commit is producing a warning with my compiler: > event_trigger.c:1764:9: note: in expansion of macro ‘OidIsValid’ > Assert(OidIsValid(currentEventTriggerState->currentCommand)); > > The fix is obvious because currentCommand is a pointer and not an Oid. > Please see attached. Should I fix it myself?
If you have a commit ready, please do, thanks. -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services