Got it! Thanks!
My question:
1. If an ordinary user create the extension, my understanding is that the object created in the extension should be the user who create the extension?
2. Will the fix for bloom be applied on pg13?
 
 
 
----- Original message -----
From: "Neil Chen" <carpenter.nail.cz@gmail.com>
To: bjzhangl@cn.ibm.com, pgsql-bugs@lists.postgresql.org
Cc:
Subject: [EXTERNAL] Re: BUG #17157: authorizaiton of dict_int and bloom extention
Date: Tue, Aug 24, 2021 4:38 PM
 
 
 
On Tue, Aug 24, 2021 at 4:19 PM PG Bug reporting form <noreply@postgresql.org> wrote:
The following bug has been logged on the website:

Bug reference:      17157
Logged by:          Lily Zhang
Email address:      bjzhangl@cn.ibm.com
PostgreSQL version: 13.3
Operating system:   os390x
Description:       

1. Since dict_int is trusted, we create extension of dict_int with normal
user. But when alter maxlen of intdict, it reports error. This is the
detail.
```
admin=> create extension dict_int;
CREATE EXTENSION
admin=> ALTER TEXT SEARCH DICTIONARY intdict (MAXLEN = 7);
ERROR:  must be owner of text search dictionary intdict
```
2. Since pg13 supports trusted extension, we make bloom trusted by changing
control file. Everything runs well except drop extension with normal user
who creates this extension.
```
test=> create extension bloom;
CREATE EXTENSION
test=> drop extension bloom;
ERROR:  must be superuser to drop access methods
```
 
 
Hi, here are some of my understanding, hope it can help you:
 
For (1), if we set an extension "trust", the database will execute the "create" action as a superuser, so the owner of the created object is the superuser. I think this is a "feature", not a "bug".
 
For (2), it was already been fixed in commit: b1d32d3e3230f00b5baba08f75b4f665c7d6dac6.
 
--
There is no royal road to learning.
HighGo Software Co.