ページの先頭行へ戻る
Enterprise Postgres 17 リリース情報

2.2.54 LOCK TABLEの権限の簡素化

非互換

LOCK TABLEの権限を簡素化し、より大きなロックレベルの権限を持っているユーザは、より小さなロックレベルを発行できるようにします

Fujitsu Enterprise Postgres 15以前の場合

Fujitsu Enterprise Postgres 15 では、INSERT権限を持つ場合であっても、ACCESS SHARE MODEでのロックが拒否され、エラーが発生します。

[例]
postgres=# GRANT INSERT ON lock_table TO regress_locktable_user;
GRANT
postgres=# SET SESSION AUTHORIZATION regress_locktable_user;
SET
postgres=> BEGIN;
BEGIN
postgres=*> LOCK TABLE lock_table IN ACCESS SHARE MODE; -- should pass
ERROR:  permission denied for table lock_table
Fujitsu Enterprise Postgres 16の場合

Fujitsu Enterprise Postgres 16では、INSERT権限を持っている場合には、ACCESS SHARE MODEでのロックが発行できます。

[例]
postgres=# GRANT INSERT ON lock_table TO regress_locktable_user;
GRANT
postgres=# SET SESSION AUTHORIZATION regress_locktable_user;
SET
postgres=> BEGIN;
BEGIN
postgres=*> LOCK TABLE lock_table IN ACCESS SHARE MODE; -- should pass
LOCK TABLE

対処方法

ありません。