Here are some review comments for patch v16-0001.
======
> src/backend/executor/execExprInterp.c
>
> 2. ExecEvalXmlExpr
>
> @@ -3829,7 +3829,8 @@ ExecEvalXmlExpr(ExprState *state, ExprEvalStep *op)
> {
> Datum *argvalue = op->d.xmlexpr.argvalue;
> bool *argnull = op->d.xmlexpr.argnull;
> -
> + bool indent = op->d.xmlexpr.xexpr->indent;
> + text *data;
> /* argument type is known to be xml */
> Assert(list_length(xexpr->args) == 1);
> Missing whitespace after the variable declarations
Whitespace added.
~
Oh, I meant something different to that fix. I meant there is a
missing blank line after the last ('data') variable declaration.
======
Test code.
I wondered if there ought to be a test that demonstrates explicitly
saying NO INDENT will give the identical result to just omitting it.
For example:
test=# -- no indent is default
test=# SELECT xmlserialize(DOCUMENT '<foo><bar><val
x="y">42</val></bar></foo>' AS text) = xmlserialize(DOCUMENT
'<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT);
?column?
----------
t
(1 row)
test=# SELECT xmlserialize(CONTENT '<foo><bar><val
x="y">42</val></bar></foo>' AS text) = xmlserialize(CONTENT
'<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT);
?column?
----------
t
(1 row)
------
Kind Regards,
Peter Smith.
Fujitsu Australia