diff options
Diffstat (limited to 'src/backend/catalog')
| -rw-r--r-- | src/backend/catalog/dependency.c | 10 | ||||
| -rw-r--r-- | src/backend/catalog/objectaddress.c | 20 |
2 files changed, 20 insertions, 10 deletions
diff --git a/src/backend/catalog/dependency.c b/src/backend/catalog/dependency.c index 6271f8f5a0..0ab57322f3 100644 --- a/src/backend/catalog/dependency.c +++ b/src/backend/catalog/dependency.c @@ -1602,6 +1602,16 @@ find_expr_references_walker(Node *node, add_object_address(OCLASS_TSDICT, objoid, 0, context->addrs); break; + + /* + * Dependencies for regrole should be shared among all + * databases, so explicitly inhibit to have dependencies. + */ + case REGROLEOID: + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("constant of the type \'regrole\' cannot be used here"))); + break; } } return false; diff --git a/src/backend/catalog/objectaddress.c b/src/backend/catalog/objectaddress.c index 10f0396561..a1f8ada833 100644 --- a/src/backend/catalog/objectaddress.c +++ b/src/backend/catalog/objectaddress.c @@ -2818,7 +2818,7 @@ getObjectDescription(const ObjectAddress *object) case OCLASS_ROLE: { appendStringInfo(&buffer, _("role %s"), - GetUserNameFromId(object->objectId)); + GetUserNameFromId(object->objectId, false)); break; } @@ -2884,7 +2884,7 @@ getObjectDescription(const ObjectAddress *object) ReleaseSysCache(tup); if (OidIsValid(useid)) - usename = GetUserNameFromId(useid); + usename = GetUserNameFromId(useid, false); else usename = "public"; @@ -2924,28 +2924,28 @@ getObjectDescription(const ObjectAddress *object) case DEFACLOBJ_RELATION: appendStringInfo(&buffer, _("default privileges on new relations belonging to role %s"), - GetUserNameFromId(defacl->defaclrole)); + GetUserNameFromId(defacl->defaclrole, false)); break; case DEFACLOBJ_SEQUENCE: appendStringInfo(&buffer, _("default privileges on new sequences belonging to role %s"), - GetUserNameFromId(defacl->defaclrole)); + GetUserNameFromId(defacl->defaclrole, false)); break; case DEFACLOBJ_FUNCTION: appendStringInfo(&buffer, _("default privileges on new functions belonging to role %s"), - GetUserNameFromId(defacl->defaclrole)); + GetUserNameFromId(defacl->defaclrole, false)); break; case DEFACLOBJ_TYPE: appendStringInfo(&buffer, _("default privileges on new types belonging to role %s"), - GetUserNameFromId(defacl->defaclrole)); + GetUserNameFromId(defacl->defaclrole, false)); break; default: /* shouldn't get here */ appendStringInfo(&buffer, _("default privileges belonging to role %s"), - GetUserNameFromId(defacl->defaclrole)); + GetUserNameFromId(defacl->defaclrole, false)); break; } @@ -4214,7 +4214,7 @@ getObjectIdentityParts(const ObjectAddress *object, { char *username; - username = GetUserNameFromId(object->objectId); + username = GetUserNameFromId(object->objectId, false); if (objname) *objname = list_make1(username); appendStringInfoString(&buffer, @@ -4295,7 +4295,7 @@ getObjectIdentityParts(const ObjectAddress *object, ReleaseSysCache(tup); if (OidIsValid(useid)) - usename = GetUserNameFromId(useid); + usename = GetUserNameFromId(useid, false); else usename = "public"; @@ -4339,7 +4339,7 @@ getObjectIdentityParts(const ObjectAddress *object, defacl = (Form_pg_default_acl) GETSTRUCT(tup); - username = GetUserNameFromId(defacl->defaclrole); + username = GetUserNameFromId(defacl->defaclrole, false); appendStringInfo(&buffer, "for role %s", quote_identifier(username)); |
