On Wed, Aug 27, 2014 at 9:02 AM, Michael Paquier <michael.paquier@gmail.com> wrote: > > Hi all, > > In a couple of code paths we do the following to check permissions on an object: > if (pg_class_aclcheck(relid, userid, ACL_USAGE) != ACLCHECK_OK && > pg_class_aclcheck(relid, userid, ACL_UPDATE) != ACLCHECK_OK) > ereport(ERROR, blah); > > Wouldn't it be better to simplify that with a single call of pg_class_aclcheck, gathering together the modes that need to be checked? In the case above, the call to pg_class_aclcheck would become like that: > if (pg_class_aclcheck(relid, userid, > ACL_USAGE | ACL_UPDATE) != ACLCHECK_OK) > ereport(ERROR, blah); > > That's not a critical thing, but it would save some cycles. Patch is attached. >
I did a little review:
- applied to master without errors
- no compiler warnings
- no regressions
It's a minor change and as Michael already said would save some cycles.