I was just looking at the VACUUM option processing and I saw that the code to process the PARALLEL option doesn't make use of the code in defGetInt32() that's meant to handle empty and non-integer parameters. ExecVacuum() has code to handle an empty PARALLEL parameters, but not non-integer ones. That goes through to defGetInt32().
# vacuum (parallel 'bananas') pg_class; ERROR: parallel requires an integer value I feel if we're going to show that message for non-integer, then why not the same one for empty parameter rather than handling that with a custom message in the caller. The attached is what I had in mind. David
adjust_vacuum_parallel_option_handling_code.patch
Description: Binary data
