Hi,
I believe that has room for improving generation node files.
The patch attached reduced the size of generated files by 27 kbytes.
From 891 kbytes to 864 kbytes.
About the patch:
1. Avoid useless attribution when from->field is NULL, once that
the new node is palloc0.
2. Avoid useless declaration variable Size, when it is unnecessary.
3. Optimize comparison functions like memcmp and strcmp, using
a short-cut comparison of the first element.
4. Switch several copy attributions like COPY_SCALAR_FIELD or COPY_LOCATION_FIELD
by one memcpy call.
5. Avoid useless attribution, ignoring the result of pg_strtok when it is unnecessary.
regards,
Ranier Vilela