mirror of https://github.com/citusdata/citus.git
tmp2
parent
07a6d32885
commit
345b465b18
|
@ -120,6 +120,12 @@ REVOKE ALL PRIVILEGES ON ALL TABLES IN SCHEMA columnar FROM PUBLIC;
|
|||
ALTER SCHEMA columnar RENAME TO columnar_internal;
|
||||
REVOKE ALL PRIVILEGES ON SCHEMA columnar_internal FROM PUBLIC;
|
||||
|
||||
-- move citus_internal functions to columnar_internal
|
||||
|
||||
ALTER FUNCTION citus_internal.upgrade_columnar_storage(regclass) SET SCHEMA columnar_internal;
|
||||
ALTER FUNCTION citus_internal.downgrade_columnar_storage(regclass) SET SCHEMA columnar_internal;
|
||||
ALTER FUNCTION citus_internal.columnar_ensure_am_depends_catalog() SET SCHEMA columnar_internal;
|
||||
|
||||
-- create columnar schema with public usage privileges
|
||||
|
||||
CREATE SCHEMA columnar;
|
||||
|
|
|
@ -134,9 +134,6 @@ IS 'reset on or more options on a columnar table to the system defaults';
|
|||
END IF;
|
||||
END$proc$;
|
||||
|
||||
-- add citus_internal schema
|
||||
CREATE SCHEMA IF NOT EXISTS citus_internal;
|
||||
|
||||
-- (this function being dropped in 10.0.3)->#include "udfs/columnar_ensure_objects_exist/10.0-1.sql"
|
||||
|
||||
RESET search_path;
|
||||
|
@ -175,30 +172,6 @@ BEGIN
|
|||
END;
|
||||
$$;
|
||||
|
||||
--#include "udfs/upgrade_columnar_storage/10.2-1.sql"
|
||||
CREATE OR REPLACE FUNCTION citus_internal.upgrade_columnar_storage(rel regclass)
|
||||
RETURNS VOID
|
||||
STRICT
|
||||
LANGUAGE c AS 'MODULE_PATHNAME', $$upgrade_columnar_storage$$;
|
||||
|
||||
COMMENT ON FUNCTION citus_internal.upgrade_columnar_storage(regclass)
|
||||
IS 'function to upgrade the columnar storage, if necessary';
|
||||
|
||||
|
||||
--#include "udfs/downgrade_columnar_storage/10.2-1.sql"
|
||||
|
||||
CREATE OR REPLACE FUNCTION citus_internal.downgrade_columnar_storage(rel regclass)
|
||||
RETURNS VOID
|
||||
STRICT
|
||||
LANGUAGE c AS 'MODULE_PATHNAME', $$downgrade_columnar_storage$$;
|
||||
|
||||
COMMENT ON FUNCTION citus_internal.downgrade_columnar_storage(regclass)
|
||||
IS 'function to downgrade the columnar storage, if necessary';
|
||||
|
||||
-- upgrade storage for all columnar relations
|
||||
SELECT citus_internal.upgrade_columnar_storage(c.oid) FROM pg_class c, pg_am a
|
||||
WHERE c.relam = a.oid AND amname = 'columnar';
|
||||
|
||||
-- columnar--10.2-1--10.2-2.sql
|
||||
|
||||
-- revoke read access for columnar.chunk from unprivileged
|
||||
|
@ -221,49 +194,6 @@ REVOKE SELECT ON columnar.chunk FROM PUBLIC;
|
|||
|
||||
-- columnar--10.2-3--10.2-4.sql
|
||||
|
||||
CREATE OR REPLACE FUNCTION citus_internal.columnar_ensure_am_depends_catalog()
|
||||
RETURNS void
|
||||
LANGUAGE plpgsql
|
||||
SET search_path = pg_catalog
|
||||
AS $func$
|
||||
BEGIN
|
||||
INSERT INTO pg_depend
|
||||
SELECT -- Define a dependency edge from "columnar table access method" ..
|
||||
'pg_am'::regclass::oid as classid,
|
||||
(select oid from pg_am where amname = 'columnar') as objid,
|
||||
0 as objsubid,
|
||||
-- ... to each object that is registered to pg_class and that lives
|
||||
-- in "columnar" schema. That contains catalog tables, indexes
|
||||
-- created on them and the sequences created in "columnar" schema.
|
||||
--
|
||||
-- Given the possibility of user might have created their own objects
|
||||
-- in columnar schema, we explicitly specify list of objects that we
|
||||
-- are interested in.
|
||||
'pg_class'::regclass::oid as refclassid,
|
||||
columnar_schema_members.relname::regclass::oid as refobjid,
|
||||
0 as refobjsubid,
|
||||
'n' as deptype
|
||||
FROM (VALUES ('columnar.chunk'),
|
||||
('columnar.chunk_group'),
|
||||
('columnar.chunk_group_pkey'),
|
||||
('columnar.chunk_pkey'),
|
||||
('columnar.options'),
|
||||
('columnar.options_pkey'),
|
||||
('columnar.storageid_seq'),
|
||||
('columnar.stripe'),
|
||||
('columnar.stripe_first_row_number_idx'),
|
||||
('columnar.stripe_pkey')
|
||||
) columnar_schema_members(relname)
|
||||
-- Avoid inserting duplicate entries into pg_depend.
|
||||
EXCEPT TABLE pg_depend;
|
||||
END;
|
||||
$func$;
|
||||
COMMENT ON FUNCTION citus_internal.columnar_ensure_am_depends_catalog()
|
||||
IS 'internal function responsible for creating dependencies from columnar '
|
||||
'table access method to the rel objects in columnar schema';
|
||||
|
||||
|
||||
SELECT citus_internal.columnar_ensure_am_depends_catalog();
|
||||
|
||||
-- columnar--11.0-2--11.1-1.sql
|
||||
|
||||
|
@ -376,8 +306,28 @@ REVOKE ALL PRIVILEGES ON SCHEMA columnar_internal FROM PUBLIC;
|
|||
CREATE SCHEMA columnar;
|
||||
GRANT USAGE ON SCHEMA columnar TO PUBLIC;
|
||||
|
||||
--#include "udfs/upgrade_columnar_storage/10.2-1.sql"
|
||||
CREATE OR REPLACE FUNCTION columnar_internal.upgrade_columnar_storage(rel regclass)
|
||||
RETURNS VOID
|
||||
STRICT
|
||||
LANGUAGE c AS 'MODULE_PATHNAME', $$upgrade_columnar_storage$$;
|
||||
|
||||
COMMENT ON FUNCTION columnar_internal.upgrade_columnar_storage(regclass)
|
||||
IS 'function to upgrade the columnar storage, if necessary';
|
||||
|
||||
|
||||
--#include "udfs/downgrade_columnar_storage/10.2-1.sql"
|
||||
|
||||
CREATE OR REPLACE FUNCTION columnar_internal.downgrade_columnar_storage(rel regclass)
|
||||
RETURNS VOID
|
||||
STRICT
|
||||
LANGUAGE c AS 'MODULE_PATHNAME', $$downgrade_columnar_storage$$;
|
||||
|
||||
COMMENT ON FUNCTION columnar_internal.downgrade_columnar_storage(regclass)
|
||||
IS 'function to downgrade the columnar storage, if necessary';
|
||||
|
||||
-- update UDF to account for columnar_internal schema
|
||||
CREATE OR REPLACE FUNCTION citus_internal.columnar_ensure_am_depends_catalog()
|
||||
CREATE OR REPLACE FUNCTION columnar_internal.columnar_ensure_am_depends_catalog()
|
||||
RETURNS void
|
||||
LANGUAGE plpgsql
|
||||
SET search_path = pg_catalog
|
||||
|
@ -422,10 +372,12 @@ BEGIN
|
|||
EXCEPT TABLE pg_depend;
|
||||
END;
|
||||
$func$;
|
||||
COMMENT ON FUNCTION citus_internal.columnar_ensure_am_depends_catalog()
|
||||
COMMENT ON FUNCTION columnar_internal.columnar_ensure_am_depends_catalog()
|
||||
IS 'internal function responsible for creating dependencies from columnar '
|
||||
'table access method to the rel objects in columnar schema';
|
||||
|
||||
SELECT columnar_internal.columnar_ensure_am_depends_catalog();
|
||||
|
||||
-- add utility function
|
||||
|
||||
CREATE FUNCTION columnar.get_storage_id(regclass) RETURNS bigint
|
||||
|
|
|
@ -83,6 +83,12 @@ DROP FUNCTION columnar.get_storage_id(regclass);
|
|||
|
||||
DROP SCHEMA columnar;
|
||||
|
||||
-- move columnar_internal functions back to citus_internal
|
||||
|
||||
ALTER FUNCTION columnar_internal.upgrade_columnar_storage(regclass) SET SCHEMA citus_internal;
|
||||
ALTER FUNCTION columnar_internal.downgrade_columnar_storage(regclass) SET SCHEMA citus_internal;
|
||||
ALTER FUNCTION columnar_internal.columnar_ensure_am_depends_catalog() SET SCHEMA citus_internal;
|
||||
|
||||
ALTER SCHEMA columnar_internal RENAME TO columnar;
|
||||
GRANT USAGE ON SCHEMA columnar TO PUBLIC;
|
||||
GRANT SELECT ON columnar.options TO PUBLIC;
|
||||
|
|
|
@ -16,10 +16,7 @@ WHERE refclassid = 'pg_catalog.pg_extension'::pg_catalog.regclass
|
|||
ORDER BY 1;
|
||||
description
|
||||
---------------------------------------------------------------------
|
||||
access method columnar
|
||||
event trigger citus_cascade_to_partition
|
||||
function alter_columnar_table_reset(regclass,boolean,boolean,boolean,boolean)
|
||||
function alter_columnar_table_set(regclass,integer,integer,name,integer)
|
||||
function alter_distributed_table(regclass,text,integer,text,boolean)
|
||||
function alter_old_partitions_set_access_method(regclass,timestamp with time zone,name)
|
||||
function alter_role_if_exists(text,text)
|
||||
|
@ -62,8 +59,6 @@ ORDER BY 1;
|
|||
function citus_finalize_upgrade_to_citus11(boolean)
|
||||
function citus_finish_pg_upgrade()
|
||||
function citus_get_active_worker_nodes()
|
||||
function citus_internal.columnar_ensure_am_depends_catalog()
|
||||
function citus_internal.downgrade_columnar_storage(regclass)
|
||||
function citus_internal.find_groupid_for_node(text,integer)
|
||||
function citus_internal.pg_dist_node_trigger_func()
|
||||
function citus_internal.pg_dist_rebalance_strategy_trigger_func()
|
||||
|
@ -71,7 +66,6 @@ ORDER BY 1;
|
|||
function citus_internal.refresh_isolation_tester_prepared_statement()
|
||||
function citus_internal.replace_isolation_tester_func()
|
||||
function citus_internal.restore_isolation_tester_func()
|
||||
function citus_internal.upgrade_columnar_storage(regclass)
|
||||
function citus_internal_add_colocation_metadata(integer,integer,integer,regtype,oid)
|
||||
function citus_internal_add_object_metadata(text,text[],text[],integer,integer,boolean)
|
||||
function citus_internal_add_partition_metadata(regclass,"char",text,integer,"char")
|
||||
|
@ -128,8 +122,6 @@ ORDER BY 1;
|
|||
function citus_version()
|
||||
function column_name_to_column(regclass,text)
|
||||
function column_to_column_name(regclass,text)
|
||||
function columnar.get_storage_id(regclass)
|
||||
function columnar_internal.columnar_handler(internal)
|
||||
function coord_combine_agg(oid,cstring,anyelement)
|
||||
function coord_combine_agg_ffunc(internal,oid,cstring,anyelement)
|
||||
function coord_combine_agg_sfunc(internal,oid,cstring,anyelement)
|
||||
|
@ -242,18 +234,11 @@ ORDER BY 1;
|
|||
function worker_save_query_explain_analyze(text,jsonb)
|
||||
schema citus
|
||||
schema citus_internal
|
||||
schema columnar
|
||||
schema columnar_internal
|
||||
sequence columnar_internal.storageid_seq
|
||||
sequence pg_dist_colocationid_seq
|
||||
sequence pg_dist_groupid_seq
|
||||
sequence pg_dist_node_nodeid_seq
|
||||
sequence pg_dist_placement_placementid_seq
|
||||
sequence pg_dist_shardid_seq
|
||||
table columnar_internal.chunk
|
||||
table columnar_internal.chunk_group
|
||||
table columnar_internal.options
|
||||
table columnar_internal.stripe
|
||||
table pg_dist_authinfo
|
||||
table pg_dist_colocation
|
||||
table pg_dist_local_group
|
||||
|
@ -278,12 +263,7 @@ ORDER BY 1;
|
|||
view citus_shards_on_worker
|
||||
view citus_stat_activity
|
||||
view citus_stat_statements
|
||||
view columnar.chunk
|
||||
view columnar.chunk_group
|
||||
view columnar.options
|
||||
view columnar.storage
|
||||
view columnar.stripe
|
||||
view pg_dist_shard_placement
|
||||
view time_partitions
|
||||
(269 rows)
|
||||
(248 rows)
|
||||
|
||||
|
|
|
@ -63,7 +63,7 @@ SELECT version_major, version_minor, reserved_stripe_id, reserved_row_number
|
|||
FROM columnar_storage_info('no_data_columnar_table');
|
||||
|
||||
-- table is already upgraded, make sure that upgrade_columnar_metapage is no-op
|
||||
SELECT citus_internal.upgrade_columnar_storage(c.oid)
|
||||
SELECT columnar_internal.upgrade_columnar_storage(c.oid)
|
||||
FROM pg_class c, pg_am a
|
||||
WHERE c.relam = a.oid AND amname = 'columnar' and relname = 'columnar_table_2';
|
||||
|
||||
|
|
Loading…
Reference in New Issue