From 09a718900f8b3b7fb4c2290e002bbdf16c5981fd Mon Sep 17 00:00:00 2001 From: adityaanikam Date: Thu, 29 Oct 2026 22:30:04 +0530 Subject: [PATCH] Show the pgTimeTable Chains node only to roles with INSERT, SELECT and UPDATE on timetable.chain. #10695 --- .../browser/server_groups/servers/pg_timetable/__init__.py | 6 ++++-- .../server_groups/servers/pg_timetable/tests/utils.py | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/web/pgadmin/browser/server_groups/servers/pg_timetable/__init__.py b/web/pgadmin/browser/server_groups/servers/pg_timetable/__init__.py index aaa99d09ae0..bdbf4994e13 100644 --- a/web/pgadmin/browser/server_groups/servers/pg_timetable/__init__.py +++ b/web/pgadmin/browser/server_groups/servers/pg_timetable/__init__.py @@ -53,8 +53,10 @@ def backend_supported(self, manager, **kwargs): status, res = conn.execute_scalar(""" SELECT - has_table_privilege( - 'timetable.chain', 'INSERT, SELECT, UPDATE' + ( + has_table_privilege('timetable.chain', 'INSERT') AND + has_table_privilege('timetable.chain', 'SELECT') AND + has_table_privilege('timetable.chain', 'UPDATE') ) has_priviledge WHERE EXISTS( SELECT has_schema_privilege('timetable', 'USAGE') diff --git a/web/pgadmin/browser/server_groups/servers/pg_timetable/tests/utils.py b/web/pgadmin/browser/server_groups/servers/pg_timetable/tests/utils.py index c59548ec10e..38cf36f2eae 100644 --- a/web/pgadmin/browser/server_groups/servers/pg_timetable/tests/utils.py +++ b/web/pgadmin/browser/server_groups/servers/pg_timetable/tests/utils.py @@ -116,8 +116,10 @@ def is_pgtimetable_installed_on_server(self): SQL = """ SELECT - has_table_privilege( - 'timetable.chain', 'INSERT, SELECT, UPDATE' + ( + has_table_privilege('timetable.chain', 'INSERT') AND + has_table_privilege('timetable.chain', 'SELECT') AND + has_table_privilege('timetable.chain', 'UPDATE') ) has_priviledge WHERE EXISTS( SELECT has_schema_privilege('timetable', 'USAGE')