Re: REVOKE to an user that doesn't exist - Mailing list pgsql-general

From Moreno Andreo
Subject Re: REVOKE to an user that doesn't exist
Date
Msg-id 6de32efb-ba14-719a-de09-4a2c4fae298d@evolu-s.it
Whole thread Raw
In response to Re: REVOKE to an user that doesn't exist  (Adrian Klaver <adrian.klaver@aklaver.com>)
List pgsql-general
Il 12/12/2018 15:39, Adrian Klaver ha scritto:
> On 12/12/18 5:11 AM, Moreno Andreo wrote:
>> Hi all,
>>
>> I'm trying to pg_upgrade a cluster from 9.1 to 10 (Windows 10, but I 
>> don't think it matters).
>>
>> At a certain point an error is thrown while parsing a trigger:
>>
>> could not execute query: ERROR:  role "1067431" does not exist
>>
>> command was: REVOKE ALL ON FUNCTION "x"() FROM PUBLIC;
>> GRANT ALL ON FUNCTION "public"."x"() TO "1067431" WITH GRANT OPTION;
>>
>> Here's the evidence :-)
>
> The below is from the 9.1 cluster, correct?
Correct, 9.1.6, IIRC
>
>> postgres=# select * from pg_roles;
>>       rolname      | rolsuper | rolinherit | rolcreaterole | 
>> rolcreatedb | rolcatupdate | rolcanlogin | rolreplication | 
>> rolconnlimit | rolpassword | rolvaliduntil | rolconfig |   oid
>>
------------------+----------+------------+---------------+-------------+--------------+-------------+----------------+--------------+-------------+---------------+-----------+---------

>>
>>   postgres         | t        | t          | t             | t | 
>> t            | t           | t |           -1 | ******** 
>> |               |           |      10
>>   user1      | t        | t          | t             | t | t | 
>> t           | t              |           -1 | ******** 
>> |               |           |   16393
>>   user2     | t        | t          | t             | t           | 
>> t            | t           | t |           -1 | ******** 
>> |               |           |   16394
>>   user3       | f        | t          | f             | f | f | 
>> t           | f              |           -1 | ******** 
>> |               |           |   16395
>>   user4 | f        | t          | t             | t           | 
>> f            | t           | f              |           -1 | ******** 
>> |               |           | 1067432
>>   user5          | f        | t          | t             | 
>> t           | f            | t           | f |           -1 | 
>> ******** |               |           |   30602
>> (6 rows)
>>
>> So, no user with that OID. I checked in the trigger pointed to the 
>> error and I found
>>
>> GRANT EXECUTE ON FUNCTION x() TO "1067431" WITH GRANT OPTION;
>
> I am not following as a trigger would not have that in its code.
>
> Are you referring to the function x()?
>
> If so is the GRANT in the function?
Sorry, the grant above is extracted from the CREATE statement that 
PgAdmin3 shows when you click on the trigger




pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: REVOKE to an user that doesn't exist
Next
From: Adrian Klaver
Date:
Subject: Re: Errors with schema migration and logical replication — expected?