Hi, Here are a few comments for patch set v13*
//////////
Patch v13-0001
======
Commit message
1.1
/were no use case/was no use case/
~~~
1.2
It seemed a bit odd that the switch cases for
'construct_array_builtin' are not the same as those for
'deconstruct_array_builtin'.
For example, all these ones seem missing from deconstruct:
case INT4OID:
case INT8OID:
case NAMEOID:
case REGTYPEOID:
I know that has nothing to do with your patch, and I guess it does not
cause any problems otherwise there would be ERRORs. But, if you are to
follow this same current pattern, then perhaps you don't need to add
your new case for 'deconstruct_array_builtin', since AFAICT you are
never using it.
//////////
Patch v13-0002
======
pg_get_logical_snapshot_meta:
2.1
+ Datum values[PG_GET_LOGICAL_SNAPSHOT_META_COLS];
+ bool nulls[PG_GET_LOGICAL_SNAPSHOT_META_COLS];
FWIW, if you wanted to avoid a few lines you could initialise the
nulls array during the declaration.
bool nulls[PG_GET_LOGICAL_SNAPSHOT_META_COLS] = {0};
This seems a common pattern in other source code, and it replaces the
need for the subsequent memset.
~~~
pg_get_logical_snapshot_info:
2.2
+ Datum values[PG_GET_LOGICAL_SNAPSHOT_INFO_COLS];
+ bool nulls[PG_GET_LOGICAL_SNAPSHOT_INFO_COLS];
Ditto of #2.1. You could instead just initialise in the declaration like:
bool nulls[PG_GET_LOGICAL_SNAPSHOT_INFO_COLS] = {0};
======
Kind Regards,
Peter Smith.
Fujitsu Australia