Thread: pgsql: Remove deprecated abstime, reltime, tinterval datatypes.
Remove deprecated abstime, reltime, tinterval datatypes. These types have been deprecated for a *long* time. Catversion bump, for obvious reasons. Author: Andres Freund Discussion: https://postgr.es/m/20181009192237.34wjp3nmw7oynmmr@alap3.anarazel.de https://postgr.es/m/20171213080506.cwjkpcz3bkk6yz2u@alap3.anarazel.de https://postgr.es/m/25615.1513115237@sss.pgh.pa.us Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/cda6a8d01d391eab45c4b3e0043a1b2b31072f5f Modified Files -------------- doc/src/sgml/brin.sgml | 22 - doc/src/sgml/catalogs.sgml | 4 +- doc/src/sgml/datatype.sgml | 8 - doc/src/sgml/xfunc.sgml | 20 - src/backend/access/hash/hashvalidate.c | 1 - src/backend/catalog/system_views.sql | 2 +- src/backend/utils/adt/Makefile | 2 +- src/backend/utils/adt/date.c | 50 - src/backend/utils/adt/formatting.c | 1 - src/backend/utils/adt/nabstime.c | 1541 ---------------------------- src/backend/utils/adt/selfuncs.c | 17 - src/bin/pg_dump/pg_dumpall.c | 2 +- src/include/catalog/catversion.h | 2 +- src/include/catalog/pg_aggregate.dat | 6 - src/include/catalog/pg_amop.dat | 98 -- src/include/catalog/pg_amproc.dat | 45 - src/include/catalog/pg_cast.dat | 26 - src/include/catalog/pg_opclass.dat | 16 - src/include/catalog/pg_operator.dat | 141 --- src/include/catalog/pg_opfamily.dat | 14 - src/include/catalog/pg_proc.dat | 198 ---- src/include/catalog/pg_type.dat | 15 - src/include/utils/datetime.h | 2 +- src/include/utils/nabstime.h | 103 -- src/interfaces/ecpg/ecpglib/execute.c | 6 - src/test/regress/expected/abstime.out | 136 --- src/test/regress/expected/alter_table.out | 30 +- src/test/regress/expected/horology.out | 210 ---- src/test/regress/expected/opr_sanity.out | 34 +- src/test/regress/expected/reltime.out | 109 -- src/test/regress/expected/rules.out | 2 +- src/test/regress/expected/sanity_check.out | 3 - src/test/regress/expected/tinterval.out | 172 ---- src/test/regress/parallel_schedule | 4 +- src/test/regress/serial_schedule | 3 - src/test/regress/sql/abstime.sql | 67 -- src/test/regress/sql/alter_table.sql | 24 +- src/test/regress/sql/horology.sql | 62 -- src/test/regress/sql/opr_sanity.sql | 2 - src/test/regress/sql/reltime.sql | 50 - src/test/regress/sql/tinterval.sql | 97 -- 41 files changed, 29 insertions(+), 3318 deletions(-)
On 10/11/2018 03:02 PM, Andres Freund wrote: > Remove deprecated abstime, reltime, tinterval datatypes. > > These types have been deprecated for a *long* time. This has broken pg_upgrade from previous versions: pg_restore: [archiver (db)] Error while PROCESSING TOC: pg_restore: [archiver (db)] Error from TOC entry 212; 1259 16891 TABLE abstime_tbl buildfarm pg_restore: [archiver (db)] could not execute query: ERROR: type "abstime" does not exist LINE 14: "f1" "abstime" ^ Command was: -- For binary upgrade, must preserve pg_type oid SELECT pg_catalog.binary_upgrade_set_next_pg_type_oid('16893'::pg_catalog.oid); -- For binary upgrade, must preserve pg_type array oid SELECT pg_catalog.binary_upgrade_set_next_array_pg_type_oid('16892'::pg_catalog.oid); -- For binary upgrade, must preserve pg_class oids SELECT pg_catalog.binary_upgrade_set_next_heap_pg_class_oid('16891'::pg_catalog.oid); CREATE TABLE "public"."abstime_tbl" ( "f1" "abstime" ); -- For binary upgrade, set heap's relfrozenxid and relminmxid UPDATE pg_catalog.pg_class SET relfrozenxid = '2643', relminmxid = '1' WHERE oid = '"public"."abstime_tbl"'::pg_catalog.regclass; cheers andrew -- Andrew Dunstan https://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
On 2018-10-11 16:54:41 -0400, Andrew Dunstan wrote: > > > On 10/11/2018 03:02 PM, Andres Freund wrote: > > Remove deprecated abstime, reltime, tinterval datatypes. > > > > These types have been deprecated for a *long* time. > > > This has broken pg_upgrade from previous versions: > > pg_restore: [archiver (db)] Error while PROCESSING TOC: > pg_restore: [archiver (db)] Error from TOC entry 212; 1259 16891 > TABLE abstime_tbl buildfarm > pg_restore: [archiver (db)] could not execute query: ERROR: type > "abstime" does not exist > LINE 14: "f1" "abstime" > ^ > Command was: > -- For binary upgrade, must preserve pg_type oid > SELECT > pg_catalog.binary_upgrade_set_next_pg_type_oid('16893'::pg_catalog.oid); I'm not sure I see the problem you're seeing here? You've an abstime column. That type has been removed. So you get an error? Or is your concern solely that it affects automated testing? Greetings, Andres Freund