mirror of
https://github.com/timescale/timescaledb.git
synced 2025-05-16 18:43:18 +08:00
Fix update tests to handle sequences
The post-update script was handling preserving initprivs for newly added catalog tables and views. However, newly added catalog sequences need separate handling otherwise update tests start failing. We also now grant privileges for all future sequences in the update tests. In passing, default the PG_VERSION in the update tests to 12 since we don't work with PG11 anymore.
This commit is contained in:
parent
d800e2f46f
commit
8aaef4ae14
@ -11,7 +11,7 @@ TEST_VERSION=${TEST_VERSION:-}
|
||||
GIT_ID=$(git -C ${BASE_DIR} describe --dirty --always | sed -e "s|/|_|g")
|
||||
UPDATE_TO_IMAGE=${UPDATE_TO_IMAGE:-update_test}
|
||||
UPDATE_TO_TAG=${UPDATE_TO_TAG:-${GIT_ID}}
|
||||
PG_VERSION=${PG_VERSION:-11.0}
|
||||
PG_VERSION=${PG_VERSION:-12.0}
|
||||
|
||||
# This will propagate to the test_update_from_tags.sh script
|
||||
export TEST_REPAIR
|
||||
|
@ -46,7 +46,21 @@ INSERT INTO saved_privs
|
||||
WHERE tmpnsp = '_timescaledb_catalog' AND tmpname = 'chunk')
|
||||
FROM pg_class JOIN pg_namespace ns ON ns.oid = relnamespace
|
||||
LEFT JOIN saved_privs ON tmpnsp = nspname AND tmpname = relname
|
||||
WHERE nspname IN ('_timescaledb_catalog', '_timescaledb_config')
|
||||
WHERE relkind IN ('r', 'v') AND nspname IN ('_timescaledb_catalog', '_timescaledb_config')
|
||||
OR nspname = '_timescaledb_internal'
|
||||
AND relname IN ('hypertable_chunk_local_size', 'compressed_chunk_stats',
|
||||
'bgw_job_stat', 'bgw_policy_chunk_stats')
|
||||
ON CONFLICT DO NOTHING;
|
||||
|
||||
-- The above is good enough for tables and views. However sequences need to
|
||||
-- use the "chunk_id_seq" catalog sequence as a template
|
||||
INSERT INTO saved_privs
|
||||
SELECT nspname, relname, relacl,
|
||||
(SELECT tmpini FROM saved_privs
|
||||
WHERE tmpnsp = '_timescaledb_catalog' AND tmpname = 'chunk_id_seq')
|
||||
FROM pg_class JOIN pg_namespace ns ON ns.oid = relnamespace
|
||||
LEFT JOIN saved_privs ON tmpnsp = nspname AND tmpname = relname
|
||||
WHERE relkind IN ('S') AND nspname IN ('_timescaledb_catalog', '_timescaledb_config')
|
||||
OR nspname = '_timescaledb_internal'
|
||||
AND relname IN ('hypertable_chunk_local_size', 'compressed_chunk_stats',
|
||||
'bgw_job_stat', 'bgw_policy_chunk_stats')
|
||||
|
@ -21,3 +21,7 @@ ALTER DEFAULT PRIVILEGES IN SCHEMA _timescaledb_catalog
|
||||
GRANT SELECT ON TABLES TO tsdbadmin;
|
||||
ALTER DEFAULT PRIVILEGES IN SCHEMA _timescaledb_config
|
||||
GRANT SELECT ON TABLES TO tsdbadmin;
|
||||
ALTER DEFAULT PRIVILEGES IN SCHEMA _timescaledb_catalog
|
||||
GRANT SELECT ON SEQUENCES TO tsdbadmin;
|
||||
ALTER DEFAULT PRIVILEGES IN SCHEMA _timescaledb_config
|
||||
GRANT SELECT ON SEQUENCES TO tsdbadmin;
|
||||
|
Loading…
x
Reference in New Issue
Block a user