From 23ab0c1507583e14d106731ace8dedb277a4f2f7 Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Thu, 28 Feb 2019 18:03:58 +1300 Subject: [PATCH] Remove the vestigial "smgr" type. In ancient times this was part of the machinery for controlling the block storage for each table. It is no longer used, so remove. --- src/backend/storage/smgr/Makefile | 2 +- src/backend/storage/smgr/smgrtype.c | 80 ----------------------- src/include/catalog/pg_proc.dat | 13 ---- src/include/catalog/pg_type.dat | 7 -- src/test/regress/expected/alter_table.out | 20 +++--- src/test/regress/expected/type_sanity.out | 3 +- src/test/regress/sql/alter_table.sql | 8 +-- 7 files changed, 16 insertions(+), 117 deletions(-) delete mode 100644 src/backend/storage/smgr/smgrtype.c diff --git a/src/backend/storage/smgr/Makefile b/src/backend/storage/smgr/Makefile index 2b95cb0df1..e486b7c0d1 100644 --- a/src/backend/storage/smgr/Makefile +++ b/src/backend/storage/smgr/Makefile @@ -12,6 +12,6 @@ subdir = src/backend/storage/smgr top_builddir = ../../../.. include $(top_builddir)/src/Makefile.global -OBJS = md.o smgr.o smgrtype.o +OBJS = md.o smgr.o include $(top_srcdir)/src/backend/common.mk diff --git a/src/backend/storage/smgr/smgrtype.c b/src/backend/storage/smgr/smgrtype.c deleted file mode 100644 index cf12094da4..0000000000 --- a/src/backend/storage/smgr/smgrtype.c +++ /dev/null @@ -1,80 +0,0 @@ -/*------------------------------------------------------------------------- - * - * smgrtype.c - * storage manager type - * - * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * - * IDENTIFICATION - * src/backend/storage/smgr/smgrtype.c - * - *------------------------------------------------------------------------- - */ -#include "postgres.h" - -#include "storage/smgr.h" -#include "utils/builtins.h" - - -typedef struct smgrid -{ - const char *smgr_name; -} smgrid; - -/* - * StorageManager[] -- List of defined storage managers. - */ -static const smgrid StorageManager[] = { - {"magnetic disk"} -}; - -static const int NStorageManagers = lengthof(StorageManager); - - -Datum -smgrin(PG_FUNCTION_ARGS) -{ - char *s = PG_GETARG_CSTRING(0); - int16 i; - - for (i = 0; i < NStorageManagers; i++) - { - if (strcmp(s, StorageManager[i].smgr_name) == 0) - PG_RETURN_INT16(i); - } - elog(ERROR, "unrecognized storage manager name \"%s\"", s); - PG_RETURN_INT16(0); -} - -Datum -smgrout(PG_FUNCTION_ARGS) -{ - int16 i = PG_GETARG_INT16(0); - char *s; - - if (i >= NStorageManagers || i < 0) - elog(ERROR, "invalid storage manager ID: %d", i); - - s = pstrdup(StorageManager[i].smgr_name); - PG_RETURN_CSTRING(s); -} - -Datum -smgreq(PG_FUNCTION_ARGS) -{ - int16 a = PG_GETARG_INT16(0); - int16 b = PG_GETARG_INT16(1); - - PG_RETURN_BOOL(a == b); -} - -Datum -smgrne(PG_FUNCTION_ARGS) -{ - int16 a = PG_GETARG_INT16(0); - int16 b = PG_GETARG_INT16(1); - - PG_RETURN_BOOL(a != b); -} diff --git a/src/include/catalog/pg_proc.dat b/src/include/catalog/pg_proc.dat index a4e173b484..08a3eef5fa 100644 --- a/src/include/catalog/pg_proc.dat +++ b/src/include/catalog/pg_proc.dat @@ -1585,19 +1585,6 @@ proargtypes => 'internal oid internal int2 internal', prosrc => 'arraycontjoinsel' }, -{ oid => '760', descr => 'I/O', - proname => 'smgrin', provolatile => 's', prorettype => 'smgr', - proargtypes => 'cstring', prosrc => 'smgrin' }, -{ oid => '761', descr => 'I/O', - proname => 'smgrout', provolatile => 's', prorettype => 'cstring', - proargtypes => 'smgr', prosrc => 'smgrout' }, -{ oid => '762', descr => 'storage manager', - proname => 'smgreq', prorettype => 'bool', proargtypes => 'smgr smgr', - prosrc => 'smgreq' }, -{ oid => '763', descr => 'storage manager', - proname => 'smgrne', prorettype => 'bool', proargtypes => 'smgr smgr', - prosrc => 'smgrne' }, - { oid => '764', descr => 'large object import', proname => 'lo_import', provolatile => 'v', proparallel => 'u', prorettype => 'oid', proargtypes => 'text', prosrc => 'be_lo_import' }, diff --git a/src/include/catalog/pg_type.dat b/src/include/catalog/pg_type.dat index 4b7750d439..bfe581ce64 100644 --- a/src/include/catalog/pg_type.dat +++ b/src/include/catalog/pg_type.dat @@ -172,13 +172,6 @@ typoutput => 'pg_ddl_command_out', typreceive => 'pg_ddl_command_recv', typsend => 'pg_ddl_command_send', typalign => 'ALIGNOF_POINTER' }, -# OIDS 200 - 299 - -{ oid => '210', descr => 'storage manager', - typname => 'smgr', typlen => '2', typbyval => 't', typcategory => 'U', - typinput => 'smgrin', typoutput => 'smgrout', typreceive => '-', - typsend => '-', typalign => 's' }, - # OIDS 600 - 699 { oid => '600', array_type_oid => '1017', diff --git a/src/test/regress/expected/alter_table.out b/src/test/regress/expected/alter_table.out index 4db792cf2f..fd14c4b4f2 100644 --- a/src/test/regress/expected/alter_table.out +++ b/src/test/regress/expected/alter_table.out @@ -29,7 +29,7 @@ ALTER TABLE attmp ADD COLUMN l tid; ALTER TABLE attmp ADD COLUMN m xid; ALTER TABLE attmp ADD COLUMN n oidvector; --ALTER TABLE attmp ADD COLUMN o lock; -ALTER TABLE attmp ADD COLUMN p smgr; +ALTER TABLE attmp ADD COLUMN p boolean; ALTER TABLE attmp ADD COLUMN q point; ALTER TABLE attmp ADD COLUMN r lseg; ALTER TABLE attmp ADD COLUMN s path; @@ -44,13 +44,13 @@ INSERT INTO attmp (a, b, c, d, e, f, g, i, k, l, m, n, p, q, r, s, t, VALUES (4, 'name', 'text', 4.1, 4.1, 2, '(4.1,4.1,3.1,3.1)', 'c', 314159, '(1,1)', '512', - '1 2 3 4 5 6 7 8', 'magnetic disk', '(1.1,1.1)', '(4.1,4.1,3.1,3.1)', + '1 2 3 4 5 6 7 8', true, '(1.1,1.1)', '(4.1,4.1,3.1,3.1)', '(0,2,4.1,4.1,3.1,3.1)', '(4.1,4.1,3.1,3.1)', 'epoch', '01:00:10', '{1.0,2.0,3.0,4.0}', '{1.0,2.0,3.0,4.0}', '{1,2,3,4}'); SELECT * FROM attmp; - initial | a | b | c | d | e | f | g | i | k | l | m | n | p | q | r | s | t | v | w | x | y | z ----------+---+------+------+-----+-----+---+-----------------------+---+--------+-------+-----+-----------------+---------------+-----------+-----------------------+-----------------------------+---------------------+--------------------------+------------------+-----------+-----------+----------- - | 4 | name | text | 4.1 | 4.1 | 2 | ((4.1,4.1),(3.1,3.1)) | c | 314159 | (1,1) | 512 | 1 2 3 4 5 6 7 8 | magnetic disk | (1.1,1.1) | [(4.1,4.1),(3.1,3.1)] | ((0,2),(4.1,4.1),(3.1,3.1)) | (4.1,4.1),(3.1,3.1) | Thu Jan 01 00:00:00 1970 | @ 1 hour 10 secs | {1,2,3,4} | {1,2,3,4} | {1,2,3,4} + initial | a | b | c | d | e | f | g | i | k | l | m | n | p | q | r | s | t | v | w | x | y | z +---------+---+------+------+-----+-----+---+-----------------------+---+--------+-------+-----+-----------------+---+-----------+-----------------------+-----------------------------+---------------------+--------------------------+------------------+-----------+-----------+----------- + | 4 | name | text | 4.1 | 4.1 | 2 | ((4.1,4.1),(3.1,3.1)) | c | 314159 | (1,1) | 512 | 1 2 3 4 5 6 7 8 | t | (1.1,1.1) | [(4.1,4.1),(3.1,3.1)] | ((0,2),(4.1,4.1),(3.1,3.1)) | (4.1,4.1),(3.1,3.1) | Thu Jan 01 00:00:00 1970 | @ 1 hour 10 secs | {1,2,3,4} | {1,2,3,4} | {1,2,3,4} (1 row) DROP TABLE attmp; @@ -71,7 +71,7 @@ ALTER TABLE attmp ADD COLUMN l tid; ALTER TABLE attmp ADD COLUMN m xid; ALTER TABLE attmp ADD COLUMN n oidvector; --ALTER TABLE attmp ADD COLUMN o lock; -ALTER TABLE attmp ADD COLUMN p smgr; +ALTER TABLE attmp ADD COLUMN p boolean; ALTER TABLE attmp ADD COLUMN q point; ALTER TABLE attmp ADD COLUMN r lseg; ALTER TABLE attmp ADD COLUMN s path; @@ -86,13 +86,13 @@ INSERT INTO attmp (a, b, c, d, e, f, g, i, k, l, m, n, p, q, r, s, t, VALUES (4, 'name', 'text', 4.1, 4.1, 2, '(4.1,4.1,3.1,3.1)', 'c', 314159, '(1,1)', '512', - '1 2 3 4 5 6 7 8', 'magnetic disk', '(1.1,1.1)', '(4.1,4.1,3.1,3.1)', + '1 2 3 4 5 6 7 8', true, '(1.1,1.1)', '(4.1,4.1,3.1,3.1)', '(0,2,4.1,4.1,3.1,3.1)', '(4.1,4.1,3.1,3.1)', 'epoch', '01:00:10', '{1.0,2.0,3.0,4.0}', '{1.0,2.0,3.0,4.0}', '{1,2,3,4}'); SELECT * FROM attmp; - initial | a | b | c | d | e | f | g | i | k | l | m | n | p | q | r | s | t | v | w | x | y | z ----------+---+------+------+-----+-----+---+-----------------------+---+--------+-------+-----+-----------------+---------------+-----------+-----------------------+-----------------------------+---------------------+--------------------------+------------------+-----------+-----------+----------- - | 4 | name | text | 4.1 | 4.1 | 2 | ((4.1,4.1),(3.1,3.1)) | c | 314159 | (1,1) | 512 | 1 2 3 4 5 6 7 8 | magnetic disk | (1.1,1.1) | [(4.1,4.1),(3.1,3.1)] | ((0,2),(4.1,4.1),(3.1,3.1)) | (4.1,4.1),(3.1,3.1) | Thu Jan 01 00:00:00 1970 | @ 1 hour 10 secs | {1,2,3,4} | {1,2,3,4} | {1,2,3,4} + initial | a | b | c | d | e | f | g | i | k | l | m | n | p | q | r | s | t | v | w | x | y | z +---------+---+------+------+-----+-----+---+-----------------------+---+--------+-------+-----+-----------------+---+-----------+-----------------------+-----------------------------+---------------------+--------------------------+------------------+-----------+-----------+----------- + | 4 | name | text | 4.1 | 4.1 | 2 | ((4.1,4.1),(3.1,3.1)) | c | 314159 | (1,1) | 512 | 1 2 3 4 5 6 7 8 | t | (1.1,1.1) | [(4.1,4.1),(3.1,3.1)] | ((0,2),(4.1,4.1),(3.1,3.1)) | (4.1,4.1),(3.1,3.1) | Thu Jan 01 00:00:00 1970 | @ 1 hour 10 secs | {1,2,3,4} | {1,2,3,4} | {1,2,3,4} (1 row) CREATE INDEX attmp_idx ON attmp (a, (d + e), b); diff --git a/src/test/regress/expected/type_sanity.out b/src/test/regress/expected/type_sanity.out index b1419d4bc2..643a5c6f98 100644 --- a/src/test/regress/expected/type_sanity.out +++ b/src/test/regress/expected/type_sanity.out @@ -72,8 +72,7 @@ WHERE p1.typtype not in ('c','d','p') AND p1.typname NOT LIKE E'\\_%' 194 | pg_node_tree 3361 | pg_ndistinct 3402 | pg_dependencies - 210 | smgr -(4 rows) +(3 rows) -- Make sure typarray points to a varlena array type of our own base SELECT p1.oid, p1.typname as basetype, p2.typname as arraytype, diff --git a/src/test/regress/sql/alter_table.sql b/src/test/regress/sql/alter_table.sql index d80643037d..298bde179b 100644 --- a/src/test/regress/sql/alter_table.sql +++ b/src/test/regress/sql/alter_table.sql @@ -46,7 +46,7 @@ ALTER TABLE attmp ADD COLUMN m xid; ALTER TABLE attmp ADD COLUMN n oidvector; --ALTER TABLE attmp ADD COLUMN o lock; -ALTER TABLE attmp ADD COLUMN p smgr; +ALTER TABLE attmp ADD COLUMN p boolean; ALTER TABLE attmp ADD COLUMN q point; @@ -71,7 +71,7 @@ INSERT INTO attmp (a, b, c, d, e, f, g, i, k, l, m, n, p, q, r, s, t, VALUES (4, 'name', 'text', 4.1, 4.1, 2, '(4.1,4.1,3.1,3.1)', 'c', 314159, '(1,1)', '512', - '1 2 3 4 5 6 7 8', 'magnetic disk', '(1.1,1.1)', '(4.1,4.1,3.1,3.1)', + '1 2 3 4 5 6 7 8', true, '(1.1,1.1)', '(4.1,4.1,3.1,3.1)', '(0,2,4.1,4.1,3.1,3.1)', '(4.1,4.1,3.1,3.1)', 'epoch', '01:00:10', '{1.0,2.0,3.0,4.0}', '{1.0,2.0,3.0,4.0}', '{1,2,3,4}'); @@ -109,7 +109,7 @@ ALTER TABLE attmp ADD COLUMN m xid; ALTER TABLE attmp ADD COLUMN n oidvector; --ALTER TABLE attmp ADD COLUMN o lock; -ALTER TABLE attmp ADD COLUMN p smgr; +ALTER TABLE attmp ADD COLUMN p boolean; ALTER TABLE attmp ADD COLUMN q point; @@ -134,7 +134,7 @@ INSERT INTO attmp (a, b, c, d, e, f, g, i, k, l, m, n, p, q, r, s, t, VALUES (4, 'name', 'text', 4.1, 4.1, 2, '(4.1,4.1,3.1,3.1)', 'c', 314159, '(1,1)', '512', - '1 2 3 4 5 6 7 8', 'magnetic disk', '(1.1,1.1)', '(4.1,4.1,3.1,3.1)', + '1 2 3 4 5 6 7 8', true, '(1.1,1.1)', '(4.1,4.1,3.1,3.1)', '(0,2,4.1,4.1,3.1,3.1)', '(4.1,4.1,3.1,3.1)', 'epoch', '01:00:10', '{1.0,2.0,3.0,4.0}', '{1.0,2.0,3.0,4.0}', '{1,2,3,4}'); -- 2.20.1