v20220901-1-0010-this-patch-changes-error-message-column-doesn-t-exis.patch
text/x-patch
Filename: v20220901-1-0010-this-patch-changes-error-message-column-doesn-t-exis.patch
Type: text/x-patch
Part: 1
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: format-patch
Series: patch v20220901-0010
Subject: this patch changes error message "column doesn't exist" to message "column or variable doesn't exist"
| File | + | − |
|---|---|---|
| src/backend/parser/parse_expr.c | 1 | 1 |
| src/backend/parser/parse_relation.c | 5 | 4 |
| src/backend/parser/parse_target.c | 6 | 2 |
| src/include/parser/parse_expr.h | 1 | 0 |
| src/pl/plpgsql/src/expected/plpgsql_array.out | 1 | 1 |
| src/pl/plpgsql/src/expected/plpgsql_record.out | 2 | 2 |
| src/pl/tcl/expected/pltcl_queries.out | 6 | 6 |
| src/test/regress/expected/alter_table.out | 19 | 19 |
| src/test/regress/expected/copy2.out | 1 | 1 |
| src/test/regress/expected/errors.out | 4 | 4 |
| src/test/regress/expected/generated.out | 2 | 2 |
| src/test/regress/expected/insert_conflict.out | 1 | 1 |
| src/test/regress/expected/join.out | 5 | 5 |
| src/test/regress/expected/plpgsql.out | 6 | 6 |
| src/test/regress/expected/rules.out | 2 | 2 |
| src/test/regress/expected/session_variables.out | 1 | 1 |
| src/test/regress/expected/transactions.out | 2 | 2 |
| src/test/regress/expected/union.out | 1 | 1 |
From 21a549da240dd389e75ef47d8e4bb968591fb1a0 Mon Sep 17 00:00:00 2001
From: "okbob@github.com" <okbob@github.com>
Date: Tue, 5 Apr 2022 11:40:29 +0200
Subject: [PATCH 10/11] this patch changes error message "column doesn't exist"
to message "column or variable doesn't exist"
The error message will be more correct. Today, missing PL/pgSQL variable can be reported. The change has
impact on lot of regress tests not related to session variables, and then it is distributed as separate patch
---
src/backend/parser/parse_expr.c | 2 +-
src/backend/parser/parse_relation.c | 9 +++--
src/backend/parser/parse_target.c | 8 +++-
src/include/parser/parse_expr.h | 1 +
src/pl/plpgsql/src/expected/plpgsql_array.out | 2 +-
.../plpgsql/src/expected/plpgsql_record.out | 4 +-
src/pl/tcl/expected/pltcl_queries.out | 12 +++---
src/test/regress/expected/alter_table.out | 38 +++++++++----------
src/test/regress/expected/copy2.out | 2 +-
src/test/regress/expected/errors.out | 8 ++--
src/test/regress/expected/generated.out | 4 +-
src/test/regress/expected/insert_conflict.out | 2 +-
src/test/regress/expected/join.out | 10 ++---
src/test/regress/expected/plpgsql.out | 12 +++---
src/test/regress/expected/rules.out | 4 +-
.../regress/expected/session_variables.out | 2 +-
src/test/regress/expected/transactions.out | 4 +-
src/test/regress/expected/union.out | 2 +-
18 files changed, 66 insertions(+), 60 deletions(-)
diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c
index c757a7b2fe..3711707b48 100644
--- a/src/backend/parser/parse_expr.c
+++ b/src/backend/parser/parse_expr.c
@@ -501,7 +501,7 @@ transformIndirection(ParseState *pstate, A_Indirection *ind)
* Returns true, when expression of kind allows using of
* session variables.
*/
-static bool
+bool
expr_kind_allows_session_variables(ParseExprKind p_expr_kind)
{
switch (p_expr_kind)
diff --git a/src/backend/parser/parse_relation.c b/src/backend/parser/parse_relation.c
index f6b740df0a..e7d791469c 100644
--- a/src/backend/parser/parse_relation.c
+++ b/src/backend/parser/parse_relation.c
@@ -27,6 +27,7 @@
#include "nodes/makefuncs.h"
#include "nodes/nodeFuncs.h"
#include "parser/parse_enr.h"
+#include "parser/parse_expr.h"
#include "parser/parse_relation.h"
#include "parser/parse_type.h"
#include "parser/parsetree.h"
@@ -3666,9 +3667,9 @@ errorMissingColumn(ParseState *pstate,
*/
ereport(ERROR,
(errcode(ERRCODE_UNDEFINED_COLUMN),
- relname ?
+ relname || !expr_kind_allows_session_variables(pstate->p_expr_kind) ?
errmsg("column %s.%s does not exist", relname, colname) :
- errmsg("column \"%s\" does not exist", colname),
+ errmsg("column or variable \"%s\" does not exist", colname),
state->rfirst ? closestfirst ?
errhint("Perhaps you meant to reference the column \"%s.%s\".",
state->rfirst->eref->aliasname, closestfirst) :
@@ -3686,9 +3687,9 @@ errorMissingColumn(ParseState *pstate,
ereport(ERROR,
(errcode(ERRCODE_UNDEFINED_COLUMN),
- relname ?
+ relname || !expr_kind_allows_session_variables(pstate->p_expr_kind) ?
errmsg("column %s.%s does not exist", relname, colname) :
- errmsg("column \"%s\" does not exist", colname),
+ errmsg("column or variable \"%s\" does not exist", colname),
errhint("Perhaps you meant to reference the column \"%s.%s\" or the column \"%s.%s\".",
state->rfirst->eref->aliasname, closestfirst,
state->rsecond->eref->aliasname, closestsecond),
diff --git a/src/backend/parser/parse_target.c b/src/backend/parser/parse_target.c
index 41cb04f4b6..3caa300373 100644
--- a/src/backend/parser/parse_target.c
+++ b/src/backend/parser/parse_target.c
@@ -786,7 +786,9 @@ transformAssignmentIndirection(ParseState *pstate,
if (!typrelid)
ereport(ERROR,
(errcode(ERRCODE_DATATYPE_MISMATCH),
- errmsg("cannot assign to field \"%s\" of column \"%s\" because its type %s is not a composite type",
+ errmsg(expr_kind_allows_session_variables(pstate->p_expr_kind) ?
+ "cannot assign to field \"%s\" of column or variable \"%s\" because its type %s is not a composite type" :
+ "cannot assign to field \"%s\" of column \"%s\" because its type %s is not a composite type",
strVal(n), targetName,
format_type_be(targetTypeId)),
parser_errposition(pstate, location)));
@@ -795,7 +797,9 @@ transformAssignmentIndirection(ParseState *pstate,
if (attnum == InvalidAttrNumber)
ereport(ERROR,
(errcode(ERRCODE_UNDEFINED_COLUMN),
- errmsg("cannot assign to field \"%s\" of column \"%s\" because there is no such column in data type %s",
+ errmsg(expr_kind_allows_session_variables(pstate->p_expr_kind) ?
+ "cannot assign to field \"%s\" of column or variable \"%s\" because there is no such column in data type %s" :
+ "cannot assign to field \"%s\" of column \"%s\" because there is no such column in data type %s",
strVal(n), targetName,
format_type_be(targetTypeId)),
parser_errposition(pstate, location)));
diff --git a/src/include/parser/parse_expr.h b/src/include/parser/parse_expr.h
index 14b0adb948..76d6e46001 100644
--- a/src/include/parser/parse_expr.h
+++ b/src/include/parser/parse_expr.h
@@ -22,5 +22,6 @@ extern PGDLLIMPORT bool session_variables_ambiguity_warning;
extern Node *transformExpr(ParseState *pstate, Node *expr, ParseExprKind exprKind);
extern const char *ParseExprKindName(ParseExprKind exprKind);
+extern bool expr_kind_allows_session_variables(ParseExprKind p_expr_kind);
#endif /* PARSE_EXPR_H */
diff --git a/src/pl/plpgsql/src/expected/plpgsql_array.out b/src/pl/plpgsql/src/expected/plpgsql_array.out
index 9e22e56f00..e131febf3d 100644
--- a/src/pl/plpgsql/src/expected/plpgsql_array.out
+++ b/src/pl/plpgsql/src/expected/plpgsql_array.out
@@ -41,7 +41,7 @@ NOTICE: a = {"(,11)"}, a[1].i = 11
-- perhaps this ought to work, but for now it doesn't:
do $$ declare a complex[];
begin a[1:2].i := array[11,12]; raise notice 'a = %', a; end$$;
-ERROR: cannot assign to field "i" of column "a" because its type complex[] is not a composite type
+ERROR: cannot assign to field "i" of column or variable "a" because its type complex[] is not a composite type
LINE 1: a[1:2].i := array[11,12]
^
QUERY: a[1:2].i := array[11,12]
diff --git a/src/pl/plpgsql/src/expected/plpgsql_record.out b/src/pl/plpgsql/src/expected/plpgsql_record.out
index 4c5d95c79e..fc95c5fd35 100644
--- a/src/pl/plpgsql/src/expected/plpgsql_record.out
+++ b/src/pl/plpgsql/src/expected/plpgsql_record.out
@@ -134,7 +134,7 @@ ERROR: record "c" has no field "x"
CONTEXT: PL/pgSQL assignment "c.x.q1 = 1"
PL/pgSQL function inline_code_block line 1 at assignment
do $$ declare c nested_int8s; begin c.c2.x = 1; end $$;
-ERROR: cannot assign to field "x" of column "c" because there is no such column in data type two_int8s
+ERROR: cannot assign to field "x" of column or variable "c" because there is no such column in data type two_int8s
LINE 1: c.c2.x = 1
^
QUERY: c.c2.x = 1
@@ -156,7 +156,7 @@ ERROR: record "c" has no field "x"
CONTEXT: PL/pgSQL assignment "b.c.x.q1 = 1"
PL/pgSQL function inline_code_block line 1 at assignment
do $$ <<b>> declare c nested_int8s; begin b.c.c2.x = 1; end $$;
-ERROR: cannot assign to field "x" of column "b" because there is no such column in data type two_int8s
+ERROR: cannot assign to field "x" of column or variable "b" because there is no such column in data type two_int8s
LINE 1: b.c.c2.x = 1
^
QUERY: b.c.c2.x = 1
diff --git a/src/pl/tcl/expected/pltcl_queries.out b/src/pl/tcl/expected/pltcl_queries.out
index 2d922c2333..3b6506d613 100644
--- a/src/pl/tcl/expected/pltcl_queries.out
+++ b/src/pl/tcl/expected/pltcl_queries.out
@@ -246,12 +246,12 @@ ERROR: type "b" does not exist
select tcl_eval('spi_prepare a "b {"');
ERROR: unmatched open brace in list
select tcl_error_handling_test($tcl$spi_prepare "select moo" []$tcl$);
- tcl_error_handling_test
---------------------------------------
- SQLSTATE: 42703 +
- condition: undefined_column +
- cursor_position: 8 +
- message: column "moo" does not exist+
+ tcl_error_handling_test
+--------------------------------------------------
+ SQLSTATE: 42703 +
+ condition: undefined_column +
+ cursor_position: 8 +
+ message: column or variable "moo" does not exist+
statement: select moo
(1 row)
diff --git a/src/test/regress/expected/alter_table.out b/src/test/regress/expected/alter_table.out
index d63f4f1cba..c1571b1646 100644
--- a/src/test/regress/expected/alter_table.out
+++ b/src/test/regress/expected/alter_table.out
@@ -809,7 +809,7 @@ drop table atacc1;
create table atacc1 ( test int );
-- add a check constraint (fails)
alter table atacc1 add constraint atacc_test1 check (test1>3);
-ERROR: column "test1" does not exist
+ERROR: column (null).test1 does not exist
HINT: Perhaps you meant to reference the column "atacc1.test".
drop table atacc1;
-- something a little more complicated
@@ -1287,19 +1287,19 @@ select * from atacc1;
(1 row)
select * from atacc1 order by a;
-ERROR: column "a" does not exist
+ERROR: column or variable "a" does not exist
LINE 1: select * from atacc1 order by a;
^
select * from atacc1 order by "........pg.dropped.1........";
-ERROR: column "........pg.dropped.1........" does not exist
+ERROR: column or variable "........pg.dropped.1........" does not exist
LINE 1: select * from atacc1 order by "........pg.dropped.1........"...
^
select * from atacc1 group by a;
-ERROR: column "a" does not exist
+ERROR: column or variable "a" does not exist
LINE 1: select * from atacc1 group by a;
^
select * from atacc1 group by "........pg.dropped.1........";
-ERROR: column "........pg.dropped.1........" does not exist
+ERROR: column or variable "........pg.dropped.1........" does not exist
LINE 1: select * from atacc1 group by "........pg.dropped.1........"...
^
select atacc1.* from atacc1;
@@ -1309,7 +1309,7 @@ select atacc1.* from atacc1;
(1 row)
select a from atacc1;
-ERROR: column "a" does not exist
+ERROR: column or variable "a" does not exist
LINE 1: select a from atacc1;
^
select atacc1.a from atacc1;
@@ -1323,15 +1323,15 @@ select b,c,d from atacc1;
(1 row)
select a,b,c,d from atacc1;
-ERROR: column "a" does not exist
+ERROR: column or variable "a" does not exist
LINE 1: select a,b,c,d from atacc1;
^
select * from atacc1 where a = 1;
-ERROR: column "a" does not exist
+ERROR: column or variable "a" does not exist
LINE 1: select * from atacc1 where a = 1;
^
select "........pg.dropped.1........" from atacc1;
-ERROR: column "........pg.dropped.1........" does not exist
+ERROR: column or variable "........pg.dropped.1........" does not exist
LINE 1: select "........pg.dropped.1........" from atacc1;
^
select atacc1."........pg.dropped.1........" from atacc1;
@@ -1339,11 +1339,11 @@ ERROR: column atacc1.........pg.dropped.1........ does not exist
LINE 1: select atacc1."........pg.dropped.1........" from atacc1;
^
select "........pg.dropped.1........",b,c,d from atacc1;
-ERROR: column "........pg.dropped.1........" does not exist
+ERROR: column or variable "........pg.dropped.1........" does not exist
LINE 1: select "........pg.dropped.1........",b,c,d from atacc1;
^
select * from atacc1 where "........pg.dropped.1........" = 1;
-ERROR: column "........pg.dropped.1........" does not exist
+ERROR: column or variable "........pg.dropped.1........" does not exist
LINE 1: select * from atacc1 where "........pg.dropped.1........" = ...
^
-- UPDATEs
@@ -1352,7 +1352,7 @@ ERROR: column "a" of relation "atacc1" does not exist
LINE 1: update atacc1 set a = 3;
^
update atacc1 set b = 2 where a = 3;
-ERROR: column "a" does not exist
+ERROR: column or variable "a" does not exist
LINE 1: update atacc1 set b = 2 where a = 3;
^
update atacc1 set "........pg.dropped.1........" = 3;
@@ -1360,7 +1360,7 @@ ERROR: column "........pg.dropped.1........" of relation "atacc1" does not exis
LINE 1: update atacc1 set "........pg.dropped.1........" = 3;
^
update atacc1 set b = 2 where "........pg.dropped.1........" = 3;
-ERROR: column "........pg.dropped.1........" does not exist
+ERROR: column or variable "........pg.dropped.1........" does not exist
LINE 1: update atacc1 set b = 2 where "........pg.dropped.1........"...
^
-- INSERTs
@@ -1408,11 +1408,11 @@ LINE 1: insert into atacc1 ("........pg.dropped.1........",b,c,d) va...
^
-- DELETEs
delete from atacc1 where a = 3;
-ERROR: column "a" does not exist
+ERROR: column or variable "a" does not exist
LINE 1: delete from atacc1 where a = 3;
^
delete from atacc1 where "........pg.dropped.1........" = 3;
-ERROR: column "........pg.dropped.1........" does not exist
+ERROR: column or variable "........pg.dropped.1........" does not exist
LINE 1: delete from atacc1 where "........pg.dropped.1........" = 3;
^
delete from atacc1;
@@ -1490,9 +1490,9 @@ ERROR: column "a" named in key does not exist
alter table atacc1 add unique("........pg.dropped.1........");
ERROR: column "........pg.dropped.1........" named in key does not exist
alter table atacc1 add check (a > 3);
-ERROR: column "a" does not exist
+ERROR: column (null).a does not exist
alter table atacc1 add check ("........pg.dropped.1........" > 3);
-ERROR: column "........pg.dropped.1........" does not exist
+ERROR: column (null).........pg.dropped.1........ does not exist
create table atacc2 (id int4 unique);
alter table atacc1 add foreign key (a) references atacc2(id);
ERROR: column "a" referenced in foreign key constraint does not exist
@@ -1698,7 +1698,7 @@ select f1 from c1;
alter table c1 drop column f1;
select f1 from c1;
-ERROR: column "f1" does not exist
+ERROR: column or variable "f1" does not exist
LINE 1: select f1 from c1;
^
HINT: Perhaps you meant to reference the column "c1.f2".
@@ -1712,7 +1712,7 @@ ERROR: cannot drop inherited column "f1"
alter table p1 drop column f1;
-- c1.f1 is dropped now, since there is no local definition for it
select f1 from c1;
-ERROR: column "f1" does not exist
+ERROR: column or variable "f1" does not exist
LINE 1: select f1 from c1;
^
HINT: Perhaps you meant to reference the column "c1.f2".
diff --git a/src/test/regress/expected/copy2.out b/src/test/regress/expected/copy2.out
index 5f3685e9ef..edff69cd22 100644
--- a/src/test/regress/expected/copy2.out
+++ b/src/test/regress/expected/copy2.out
@@ -105,7 +105,7 @@ LINE 1: COPY x TO stdout WHERE a = 1;
COPY x from stdin WHERE a = 50004;
COPY x from stdin WHERE a > 60003;
COPY x from stdin WHERE f > 60003;
-ERROR: column "f" does not exist
+ERROR: column or variable "f" does not exist
LINE 1: COPY x from stdin WHERE f > 60003;
^
COPY x from stdin WHERE a = max(x.b);
diff --git a/src/test/regress/expected/errors.out b/src/test/regress/expected/errors.out
index 8c527474da..e53ae451df 100644
--- a/src/test/regress/expected/errors.out
+++ b/src/test/regress/expected/errors.out
@@ -27,7 +27,7 @@ LINE 1: select * from nonesuch;
^
-- bad name in target list
select nonesuch from pg_database;
-ERROR: column "nonesuch" does not exist
+ERROR: column or variable "nonesuch" does not exist
LINE 1: select nonesuch from pg_database;
^
-- empty distinct list isn't OK
@@ -37,17 +37,17 @@ LINE 1: select distinct from pg_database;
^
-- bad attribute name on lhs of operator
select * from pg_database where nonesuch = pg_database.datname;
-ERROR: column "nonesuch" does not exist
+ERROR: column or variable "nonesuch" does not exist
LINE 1: select * from pg_database where nonesuch = pg_database.datna...
^
-- bad attribute name on rhs of operator
select * from pg_database where pg_database.datname = nonesuch;
-ERROR: column "nonesuch" does not exist
+ERROR: column or variable "nonesuch" does not exist
LINE 1: ...ect * from pg_database where pg_database.datname = nonesuch;
^
-- bad attribute name in select distinct on
select distinct on (foobar) * from pg_database;
-ERROR: column "foobar" does not exist
+ERROR: column or variable "foobar" does not exist
LINE 1: select distinct on (foobar) * from pg_database;
^
-- grouping with FOR UPDATE
diff --git a/src/test/regress/expected/generated.out b/src/test/regress/expected/generated.out
index bb4190340e..3db63e02b1 100644
--- a/src/test/regress/expected/generated.out
+++ b/src/test/regress/expected/generated.out
@@ -55,7 +55,7 @@ LINE 2: b int GENERATED ALWAYS AS (num_nulls(gtest_err_2c)) STOR...
DETAIL: This would cause the generated column to depend on its own value.
-- invalid reference
CREATE TABLE gtest_err_3 (a int PRIMARY KEY, b int GENERATED ALWAYS AS (c * 2) STORED);
-ERROR: column "c" does not exist
+ERROR: column (null).c does not exist
LINE 1: ..._3 (a int PRIMARY KEY, b int GENERATED ALWAYS AS (c * 2) STO...
^
-- generation expression must be immutable
@@ -727,7 +727,7 @@ ALTER TABLE gtest25 ADD COLUMN x int GENERATED ALWAYS AS (b * 4) STORED; -- err
ERROR: cannot use generated column "b" in column generation expression
DETAIL: A generated column cannot reference another generated column.
ALTER TABLE gtest25 ADD COLUMN x int GENERATED ALWAYS AS (z * 4) STORED; -- error
-ERROR: column "z" does not exist
+ERROR: column (null).z does not exist
ALTER TABLE gtest25 ADD COLUMN c int DEFAULT 42,
ADD COLUMN x int GENERATED ALWAYS AS (c * 4) STORED;
ALTER TABLE gtest25 ADD COLUMN d int DEFAULT 101;
diff --git a/src/test/regress/expected/insert_conflict.out b/src/test/regress/expected/insert_conflict.out
index 66d8633e3e..2eb5df94e3 100644
--- a/src/test/regress/expected/insert_conflict.out
+++ b/src/test/regress/expected/insert_conflict.out
@@ -245,7 +245,7 @@ LINE 1: ...y) do update set fruit = excluded.fruit RETURNING excluded.f...
HINT: There is an entry for table "excluded", but it cannot be referenced from this part of the query.
-- Only suggest <table>.* column when inference element misspelled:
insert into insertconflicttest values (1, 'Apple') on conflict (keyy) do update set fruit = excluded.fruit;
-ERROR: column "keyy" does not exist
+ERROR: column (null).keyy does not exist
LINE 1: ...nsertconflicttest values (1, 'Apple') on conflict (keyy) do ...
^
HINT: Perhaps you meant to reference the column "insertconflicttest.key" or the column "excluded.key".
diff --git a/src/test/regress/expected/join.out b/src/test/regress/expected/join.out
index 2ed2e542a4..dbeeafa9c3 100644
--- a/src/test/regress/expected/join.out
+++ b/src/test/regress/expected/join.out
@@ -4999,7 +4999,7 @@ LINE 1: select t2.uunique1 from
HINT: Perhaps you meant to reference the column "t2.unique1".
select uunique1 from
tenk1 t1 join tenk2 t2 on t1.two = t2.two; -- error, suggest both at once
-ERROR: column "uunique1" does not exist
+ERROR: column or variable "uunique1" does not exist
LINE 1: select uunique1 from
^
HINT: Perhaps you meant to reference the column "t1.unique1" or the column "t2.unique1".
@@ -6033,7 +6033,7 @@ lateral (select * from int8_tbl t1,
-- test some error cases where LATERAL should have been used but wasn't
select f1,g from int4_tbl a, (select f1 as g) ss;
-ERROR: column "f1" does not exist
+ERROR: column or variable "f1" does not exist
LINE 1: select f1,g from int4_tbl a, (select f1 as g) ss;
^
HINT: There is a column named "f1" in table "a", but it cannot be referenced from this part of the query.
@@ -6043,7 +6043,7 @@ LINE 1: select f1,g from int4_tbl a, (select a.f1 as g) ss;
^
HINT: There is an entry for table "a", but it cannot be referenced from this part of the query.
select f1,g from int4_tbl a cross join (select f1 as g) ss;
-ERROR: column "f1" does not exist
+ERROR: column or variable "f1" does not exist
LINE 1: select f1,g from int4_tbl a cross join (select f1 as g) ss;
^
HINT: There is a column named "f1" in table "a", but it cannot be referenced from this part of the query.
@@ -6078,7 +6078,7 @@ LINE 1: select 1 from tenk1 a, lateral (select max(a.unique1) from i...
create temp table xx1 as select f1 as x1, -f1 as x2 from int4_tbl;
-- error, can't do this:
update xx1 set x2 = f1 from (select * from int4_tbl where f1 = x1) ss;
-ERROR: column "x1" does not exist
+ERROR: column or variable "x1" does not exist
LINE 1: ... set x2 = f1 from (select * from int4_tbl where f1 = x1) ss;
^
HINT: There is a column named "x1" in table "xx1", but it cannot be referenced from this part of the query.
@@ -6098,7 +6098,7 @@ update xx1 set x2 = f1 from xx1, lateral (select * from int4_tbl where f1 = x1)
ERROR: table name "xx1" specified more than once
-- also errors:
delete from xx1 using (select * from int4_tbl where f1 = x1) ss;
-ERROR: column "x1" does not exist
+ERROR: column or variable "x1" does not exist
LINE 1: ...te from xx1 using (select * from int4_tbl where f1 = x1) ss;
^
HINT: There is a column named "x1" in table "xx1", but it cannot be referenced from this part of the query.
diff --git a/src/test/regress/expected/plpgsql.out b/src/test/regress/expected/plpgsql.out
index 08e42f17dc..6f5f37d58f 100644
--- a/src/test/regress/expected/plpgsql.out
+++ b/src/test/regress/expected/plpgsql.out
@@ -2600,7 +2600,7 @@ end; $$ language plpgsql;
-- should fail: SQLSTATE and SQLERRM are only in defined EXCEPTION
-- blocks
select excpt_test1();
-ERROR: column "sqlstate" does not exist
+ERROR: column or variable "sqlstate" does not exist
LINE 1: sqlstate
^
QUERY: sqlstate
@@ -2615,7 +2615,7 @@ begin
end; $$ language plpgsql;
-- should fail
select excpt_test2();
-ERROR: column "sqlstate" does not exist
+ERROR: column or variable "sqlstate" does not exist
LINE 1: sqlstate
^
QUERY: sqlstate
@@ -4629,7 +4629,7 @@ BEGIN
RAISE NOTICE '%, %', r.roomno, r.comment;
END LOOP;
END$$;
-ERROR: column "foo" does not exist
+ERROR: column or variable "foo" does not exist
LINE 1: SELECT rtrim(roomno) AS roomno, foo FROM Room ORDER BY roomn...
^
QUERY: SELECT rtrim(roomno) AS roomno, foo FROM Room ORDER BY roomno
@@ -4671,7 +4671,7 @@ begin
raise notice 'x = %', x;
end;
$$;
-ERROR: column "x" does not exist
+ERROR: column or variable "x" does not exist
LINE 1: x + 1
^
QUERY: x + 1
@@ -4683,7 +4683,7 @@ begin
raise notice 'x = %, y = %', x, y;
end;
$$;
-ERROR: column "x" does not exist
+ERROR: column or variable "x" does not exist
LINE 1: x + 1
^
QUERY: x + 1
@@ -5696,7 +5696,7 @@ ALTER TABLE alter_table_under_transition_tables
DROP column name;
UPDATE alter_table_under_transition_tables
SET id = id;
-ERROR: column "name" does not exist
+ERROR: column or variable "name" does not exist
LINE 1: (SELECT string_agg(id || '=' || name, ',') FROM d)
^
QUERY: (SELECT string_agg(id || '=' || name, ',') FROM d)
diff --git a/src/test/regress/expected/rules.out b/src/test/regress/expected/rules.out
index 7ec3d2688f..982f31aa33 100644
--- a/src/test/regress/expected/rules.out
+++ b/src/test/regress/expected/rules.out
@@ -1191,7 +1191,7 @@ drop rule rules_foorule on rules_foo;
-- this should fail because f1 is not exposed for unqualified reference:
create rule rules_foorule as on insert to rules_foo where f1 < 100
do instead insert into rules_foo2 values (f1);
-ERROR: column "f1" does not exist
+ERROR: column or variable "f1" does not exist
LINE 2: do instead insert into rules_foo2 values (f1);
^
HINT: There is a column named "f1" in table "old", but it cannot be referenced from this part of the query.
@@ -2715,7 +2715,7 @@ select * from rules_fooview;
(1 row)
select xmin, * from rules_fooview; -- fail, views don't have such a column
-ERROR: column "xmin" does not exist
+ERROR: column or variable "xmin" does not exist
LINE 1: select xmin, * from rules_fooview;
^
select reltoastrelid, relkind, relfrozenxid
diff --git a/src/test/regress/expected/session_variables.out b/src/test/regress/expected/session_variables.out
index 55fb9ecb5e..5e1e8c5dd0 100644
--- a/src/test/regress/expected/session_variables.out
+++ b/src/test/regress/expected/session_variables.out
@@ -246,7 +246,7 @@ SELECT v1;
-- should fail
LET v1.x = 10;
-ERROR: cannot assign to field "x" of column "v1" because there is no such column in data type t1
+ERROR: cannot assign to field "x" of column or variable "v1" because there is no such column in data type t1
LINE 1: LET v1.x = 10;
^
DROP VARIABLE v1;
diff --git a/src/test/regress/expected/transactions.out b/src/test/regress/expected/transactions.out
index a46fa5d48a..a8643f5033 100644
--- a/src/test/regress/expected/transactions.out
+++ b/src/test/regress/expected/transactions.out
@@ -222,7 +222,7 @@ SELECT * FROM trans_barbaz; -- should have 1
BEGIN;
SAVEPOINT one;
SELECT trans_foo;
-ERROR: column "trans_foo" does not exist
+ERROR: column or variable "trans_foo" does not exist
LINE 1: SELECT trans_foo;
^
ROLLBACK TO SAVEPOINT one;
@@ -271,7 +271,7 @@ BEGIN;
SAVEPOINT one;
INSERT INTO savepoints VALUES (5);
SELECT trans_foo;
-ERROR: column "trans_foo" does not exist
+ERROR: column or variable "trans_foo" does not exist
LINE 1: SELECT trans_foo;
^
COMMIT;
diff --git a/src/test/regress/expected/union.out b/src/test/regress/expected/union.out
index 7ac4a9380e..01658f5353 100644
--- a/src/test/regress/expected/union.out
+++ b/src/test/regress/expected/union.out
@@ -907,7 +907,7 @@ ORDER BY q2,q1;
-- This should fail, because q2 isn't a name of an EXCEPT output column
SELECT q1 FROM int8_tbl EXCEPT SELECT q2 FROM int8_tbl ORDER BY q2 LIMIT 1;
-ERROR: column "q2" does not exist
+ERROR: column or variable "q2" does not exist
LINE 1: ... int8_tbl EXCEPT SELECT q2 FROM int8_tbl ORDER BY q2 LIMIT 1...
^
HINT: There is a column named "q2" in table "*SELECT* 2", but it cannot be referenced from this part of the query.
--
2.37.2