pgsql: Un-break whole-row Vars referencing domain-over-composite types.
От | Tom Lane |
---|---|
Тема | pgsql: Un-break whole-row Vars referencing domain-over-composite types. |
Дата | |
Msg-id | E1nzfk9-003d7S-UI@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Un-break whole-row Vars referencing domain-over-composite types. In commit ec62cb0aa, I foolishly replaced ExecEvalWholeRowVar's lookup_rowtype_tupdesc_domain call with just lookup_rowtype_tupdesc, because I didn't see how a domain could be involved there, and there were no regression test cases to jog my memory. But the existing code was correct, so revert that change and add a test case showing why it's necessary. (Note: per comment in struct DatumTupleFields, it is correct to produce an output tuple that's labeled with the base composite type, not the domain; hence just blindly looking through the domain is correct here.) Per bug #17515 from Dan Kubb. Back-patch to v11 where domains over composites became a thing. Discussion: https://postgr.es/m/17515-a24737438363aca0@postgresql.org Branch ------ REL_11_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/199aac8b2f74dcc19cf88ed7072617d753d9506c Modified Files -------------- src/backend/executor/execExprInterp.c | 6 +++++- src/test/regress/expected/domain.out | 23 +++++++++++++++++++++++ src/test/regress/sql/domain.sql | 9 +++++++++ 3 files changed, 37 insertions(+), 1 deletion(-)
В списке pgsql-committers по дате отправления: