Search Postgresql Archives

only one namespace allowed by a authid at pg_namespace table?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



only one namespace allowed by a authid at pg_namespace table? for in the function:
static void recomputeNamespacePath(void){
...
if (strcmp(curname, "$user") == 0)
        {
            /* $user --- substitute namespace matching user name, if any */
            HeapTuple    tuple;

            tuple = SearchSysCache(AUTHOID,
                                   ObjectIdGetDatum(roleid),
                                   0, 0, 0);
            if (HeapTupleIsValid(tuple))
            {
                char       *rname;

                rname = NameStr(((Form_pg_authid) GETSTRUCT(tuple))->rolname);
                namespaceId = GetSysCacheOid(NAMESPACENAME,
                                             CStringGetDatum(rname),
                                             0, 0, 0);
                ReleaseSysCache(tuple);
                if (OidIsValid(namespaceId) &&
                    !list_member_oid(oidlist, namespaceId) &&
                    pg_namespace_aclcheck(namespaceId, roleid,
                                          ACL_USAGE) == ACLCHECK_OK)
                    oidlist = lappend_oid(oidlist, namespaceId);
            }
        }
}
...
}
I noticed with the revoke of function GetSysCacheOid(NAMESPACENAME, CStringGetDatum(rname),0, 0, 0); only return one oid of namespace.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux