diff options
| author | Tom Lane | 2003-05-12 00:17:34 +0000 |
|---|---|---|
| committer | Tom Lane | 2003-05-12 00:17:34 +0000 |
| commit | 3ffaf20461e197e4b17f69e06df58e7469075021 (patch) | |
| tree | fb62e60589032ae41cda56779ce28507d08cee92 /src/test | |
| parent | 016e059fcf8154cf51afd417a7b08caa246f18af (diff) | |
Apply fixes for problems with dropped columns whose types have also been
dropped. Add regression test, too.
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/regress/expected/alter_table.out | 41 | ||||
| -rw-r--r-- | src/test/regress/sql/alter_table.sql | 18 |
2 files changed, 59 insertions, 0 deletions
diff --git a/src/test/regress/expected/alter_table.out b/src/test/regress/expected/alter_table.out index 4d618110458..550fa28d77e 100644 --- a/src/test/regress/expected/alter_table.out +++ b/src/test/regress/expected/alter_table.out @@ -1166,3 +1166,44 @@ order by relname, attnum; drop table p1, p2 cascade; NOTICE: Drop cascades to table c1 NOTICE: Drop cascades to table gc1 +-- test that operations with a dropped column do not try to reference +-- its datatype +create domain mytype as text; +create temp table foo (f1 text, f2 mytype, f3 text); +insert into foo values('aa','bb','cc'); +select * from foo; + f1 | f2 | f3 +----+----+---- + aa | bb | cc +(1 row) + +drop domain mytype cascade; +NOTICE: Drop cascades to table foo column f2 +select * from foo; + f1 | f3 +----+---- + aa | cc +(1 row) + +insert into foo values('qq','rr'); +select * from foo; + f1 | f3 +----+---- + aa | cc + qq | rr +(2 rows) + +update foo set f3 = 'zz'; +select * from foo; + f1 | f3 +----+---- + aa | zz + qq | zz +(2 rows) + +select f3,max(f1) from foo group by f3; + f3 | max +----+----- + zz | qq +(1 row) + diff --git a/src/test/regress/sql/alter_table.sql b/src/test/regress/sql/alter_table.sql index 7fcfb09df2b..df9be014016 100644 --- a/src/test/regress/sql/alter_table.sql +++ b/src/test/regress/sql/alter_table.sql @@ -845,3 +845,21 @@ where relname in ('p1','p2','c1','gc1') and attnum > 0 and not attisdropped order by relname, attnum; drop table p1, p2 cascade; + +-- test that operations with a dropped column do not try to reference +-- its datatype + +create domain mytype as text; +create temp table foo (f1 text, f2 mytype, f3 text); + +insert into foo values('aa','bb','cc'); +select * from foo; + +drop domain mytype cascade; + +select * from foo; +insert into foo values('qq','rr'); +select * from foo; +update foo set f3 = 'zz'; +select * from foo; +select f3,max(f1) from foo group by f3; |
