On Thu, 2021-07-29 at 15:27 +0900, Michael Paquier wrote: > Doing any checks around the hooks of objectaccess.h is very annoying, > because we have no modules to check after them easily except sepgsql. > Anyway, I have been checking that, with the hack-ish module attached > and tracked down that swap_relation_files() calls > InvokeObjectPostAlterHookArg() already (as you already spotted?), but > that's an internal change when it comes to SET LOGGED/UNLOGGED/ACCESS > METHOD :( > > Attached is a small module I have used for those tests, for > reference. It passes on HEAD, and with the patch attached you can > see > the extra entries.
I see that ATExecSetTableSpace() also invokes the hook even for a no- op. Should we do the same thing for setting the AM? > > > > Also, I agree with Justin that it should fail when there are > > > > multiple > > > > SET ACCESS METHOD subcommands consistently, regardless of > > > > whether > > > > one > > > > is a no-op, and it should probably throw a syntax error to > > > > match > > > > SET > > > > TABLESPACE. > > > > > > Hmm. Okay. > > I'd still disagree with that. OK, I won't press for a change here. Regards, Jeff Davis