> This is because copy_data is not something stored in pg_subscription > or another catalog. But this is not an issue for copy_fornat since its > value will be stored in the catalog. This can allow users to set the > format even if copy_data=false and no initial sync is needed at that > moment.
One other approach that might make sense is to expand the values that copy_data accepts to include the value "binary" (and probably "text" for clarity). That way people could easily choose for each sync if they want to use binary copy, text copy or no copy. Based on your message, this would mean that copy_format=binary would not be stored in catalogs anymore, does that have any bad side-effects for the implementation?