test_decoding: Don't print virtual generated columns. Virtual generated columns are stored in tuples as null values, so heap_getattr() in tuple_to_stringinfo() always returns null for them. test_decoding printed such a column as null, which is indistinguishable from a column that genuinely holds null.
This commit skips virtual generated columns in tuple_to_stringinfo(), the only place that prints a tuple. Stored generated columns continue to be printed, since their values do live in the heap tuple. This is a behavior change rather than a bug fix, and it changes test_decoding's output for tables that have virtual generated columns, which could affect consumers that parse it. Therefore it is not back-patched. Author: SATYANARAYANA NARLAPURAM <[email protected]> Co-authored-by: Bharath Rupireddy <[email protected]> Reviewed-by: Euler Taveira <[email protected]> Reviewed-by: Masahiko Sawada <[email protected]> Discussion: https://postgr.es/m/CAHg+QDfTh3UbB-Ed--o2Bd=SBDJoEiG-qp3C0+ETDibF63y=d...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/755f7e2c921f16e6bc09bdc8d286c495b2cee93b Modified Files -------------- contrib/test_decoding/expected/ddl.out | 18 ++++++++++++++++++ contrib/test_decoding/sql/ddl.sql | 12 ++++++++++++ contrib/test_decoding/test_decoding.c | 10 ++++++++++ 3 files changed, 40 insertions(+)
