On Wed, Aug 19, 2026 at 9:10 PM Cagri Biroglu <[email protected]> wrote: > > Hello Hayato, > > Thank you for the review, v5 is attached. >
Hello Cagri, Some minor comments: 1. The header above CheckRefreshTableNotInOtherSubscriptions() has two sets of comments, the first one I feel is meant for AlterSubscription_refresh_table() which is without a header. 2. + /* + * The local copy is discarded below, so require the same privilege + * TRUNCATE itself would. + */ + aclresult = pg_class_aclcheck(relid, GetUserId(), ACL_TRUNCATE); + if (aclresult != ACLCHECK_OK) + aclcheck_error(aclresult, get_relkind_objtype(get_rel_relkind(relid)), + rv->relname); rather than doing it this way, I believe you need to call truncate_check_rel(relid, rel->rd_rel); truncate_check_perms(relid, rel->rd_rel); truncate_check_activity(rel); else you will miss out on checking for temp tables of other backends and invoking InvokeObjectTruncateHook(relid) which are object access hooks. regards, Ajin Cherian Fujitsu Australia
