提交 149016a0 编写于 作者: H Heikki Linnakangas

Remove unused catalog helper functions and views.

cdb_util.sql was installed in "make install", but it was not loaded by
initdb.
Reviewed-by: NVenkatesh Raghavan <vraghavan@pivotal.io>
Reviewed-by: NDaniel Gustafsson <dgustafsson@pivotal.io>
上级 acb4090f
......@@ -111,7 +111,6 @@ install-data: $(BKIFILES) installdirs
$(INSTALL_DATA) $(call vpathsearch,postgres.shdescription) '$(DESTDIR)$(datadir)/postgres.shdescription'
$(INSTALL_DATA) $(srcdir)/system_views.sql '$(DESTDIR)$(datadir)/system_views.sql'
$(INSTALL_DATA) $(srcdir)/information_schema.sql '$(DESTDIR)$(datadir)/information_schema.sql'
$(INSTALL_DATA) $(call vpathsearch,cdb_util.sql) '$(DESTDIR)$(datadir)/cdb_util.sql'
$(INSTALL_DATA) $(call vpathsearch,cdb_schema.sql) '$(DESTDIR)$(datadir)/cdb_init.d/cdb_schema.sql'
$(INSTALL_DATA) $(srcdir)/sql_features.txt '$(DESTDIR)$(datadir)/sql_features.txt'
$(INSTALL_DATA) $(call vpathsearch,gp_toolkit.sql) '$(DESTDIR)$(datadir)/cdb_init.d/gp_toolkit.sql'
......
-- --------------------------------------------------------------------
--
-- cdb_util.sql
--
-- src/backend/catalog/cdb_util.sql
--
-- --------------------------------------------------------------------
SET log_min_messages = WARNING;
CREATE LANGUAGE PLPGSQL;
------------------------------------------------------------------
-- relation size
-- ------------------------------------------------------------------
CREATE OR REPLACE FUNCTION gp_rel_size_seg(int, Oid) returns bigint AS
$$
DECLARE result bigint;
BEGIN
if gp_execution_segment() <> $1 then
raise exception 'gp_rel_size_seg called on different segment';
end if;
select pg_relation_size($2)::bigint into result;
return result;
END
$$
LANGUAGE PLPGSQL;
CREATE OR REPLACE VIEW gp_rel_size_oid AS
select c.oid, sum(gp_rel_size_seg(c.gp_segment_id, c.oid))::bigint relsize
from gp_dist_random('pg_class') c
group by c.oid;
GRANT SELECT ON gp_rel_size_oid TO PUBLIC;
CREATE OR REPLACE FUNCTION gp_relation_size(Oid) returns bigint AS
'select relsize from gp_rel_size_oid where oid = $1;'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION gp_relation_size(text) returns bigint AS
'select gp_relation_size(pg_objname_to_oid($1));'
LANGUAGE SQL;
-----------------------------------------------------------------
-- ao related.
----------------------------------------------------------------
CREATE TYPE gp_type_aoseg_info AS (
segmentid Oid,
segno int,
colno int,
eof bigint,
tupcount bigint,
varblockcount bigint,
eofuncompressed bigint
);
CREATE OR REPLACE FUNCTION gp_aoseg_info(Oid)
RETURNS SETOF gp_type_aoseg_info
AS
$$
DECLARE relst CHAR(1);
DECLARE ncol int;
DECLARE sqlstr TEXT;
DECLARE rec gp_type_aoseg_info;
BEGIN
select relstorage into relst from pg_class where oid = $1;
if relst = 'a' then
sqlstr = 'select gp_segment_id as segmentid,
segno::int as segno,
-1::int as colno,
eof::bigint as eof,
tupcount::bigint as tupcount,
varblockcount::bigint as varblockcount,
eofuncompressed::bigint as eofuncompressed
from
gp_dist_random(''pg_aoseg.pg_aoseg_' || $1 || ''');';
else
if relst = 'c' then
select relnatts into ncol from pg_class where oid = $1;
sqlstr = 'select gp_segment_id as segmentid,
segno::int as segno,
col::int as colno,
aocsvpinfo_decode(vpinfo, col, 0) as eof,
tupcount::bigint as tupcount,
varblockcount::bigint as varblockcount,
aocsvpinfo_decode(vpinfo, col, 1) as eofuncompressed
from
gp_dist_random(''pg_aoseg.pg_aocsseg_' || $1 || '''),
generate_series(0, ' || (ncol-1)::varchar(100) || ') col;';
else
raise exception '% is not a appendonly storage type', relst;
end if;
end if;
for rec in execute sqlstr LOOP
RETURN NEXT rec;
END LOOP;
RETURN;
END
$$
LANGUAGE PLPGSQL;
CREATE OR REPLACE FUNCTION gp_aoseg_info(text)
RETURNS SETOF gp_type_aoseg_info
AS
'select * from gp_aoseg_info(pg_objname_to_oid($1));'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION gp_ao_compression_ratio(Oid)
RETURNS float AS
'select sum(eofuncompressed)::float / sum(eof)::float from gp_aoseg_info($1);'
LANGUAGE SQL;
CREATE OR REPLACE FUNCTION gp_ao_compression_ratio(text)
RETURNS float AS
'select gp_ao_compression_ratio(pg_objname_to_oid($1));'
LANGUAGE SQL;
RESET log_min_messages;
......@@ -224,7 +224,6 @@ Datum pg_ts_template_is_visible(PG_FUNCTION_ARGS);
Datum pg_ts_config_is_visible(PG_FUNCTION_ARGS);
Datum pg_my_temp_schema(PG_FUNCTION_ARGS);
Datum pg_is_other_temp_schema(PG_FUNCTION_ARGS);
Datum pg_objname_to_oid(PG_FUNCTION_ARGS);
/*
......@@ -4486,13 +4485,3 @@ pg_is_other_temp_schema(PG_FUNCTION_ARGS)
PG_RETURN_BOOL(isOtherTempNamespace(oid));
}
Datum
pg_objname_to_oid(PG_FUNCTION_ARGS)
{
text *s = PG_GETARG_TEXT_P(0);
RangeVar *rv = makeRangeVarFromNameList(textToQualifiedNameList(s));
Oid relid = RangeVarGetRelid(rv, NoLock, true);
PG_RETURN_OID(relid);
}
......@@ -188,9 +188,6 @@
-- raises deprecation error
CREATE FUNCTION gp_deprecated() RETURNS void LANGUAGE internal IMMUTABLE AS 'gp_deprecated' WITH (OID=9997, DESCRIPTION="raises function deprecation error");
-- A convenient utility
CREATE FUNCTION pg_objname_to_oid(text) RETURNS oid LANGUAGE internal IMMUTABLE STRICT AS 'pg_objname_to_oid' WITH (OID=9998, DESCRIPTION="convert an object name to oid");
-- Fault injection
CREATE FUNCTION gp_fault_inject(int4, int8) RETURNS int8 LANGUAGE internal VOLATILE STRICT AS 'gp_fault_inject' WITH (OID=9999, DESCRIPTION="Greenplum fault testing only");
......
......@@ -22,7 +22,7 @@
WARNING: DO NOT MODIFY THE FOLLOWING SECTION:
Generated by catullus.pl version 8
on Sun Nov 25 22:05:38 2018
on Wed Feb 6 16:14:01 2019
Please make your changes in pg_proc.sql
*/
......@@ -388,12 +388,6 @@ DATA(insert OID = 9997 ( gp_deprecated PGNSP PGUID 12 1 0 0 0 f f f f f f i 0 0
DESCR("raises function deprecation error");
/* A convenient utility */
/* pg_objname_to_oid(text) => oid */
DATA(insert OID = 9998 ( pg_objname_to_oid PGNSP PGUID 12 1 0 0 0 f f f f t f i 1 0 26 "25" _null_ _null_ _null_ _null_ pg_objname_to_oid _null_ _null_ _null_ n a ));
DESCR("convert an object name to oid");
/* Fault injection */
/* gp_fault_inject(int4, int8) => int8 */
DATA(insert OID = 9999 ( gp_fault_inject PGNSP PGUID 12 1 0 0 0 f f f f t f v 2 0 20 "23 20" _null_ _null_ _null_ _null_ gp_fault_inject _null_ _null_ _null_ n a ));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册