1. The "on conflict do update" would apply to every table. In my opinion, this is fine. It's the user's choice if they want to apply it to one or all tables. We could make the options more powerful (i.e. support multi-tables) but it would add a lot of complexity.
2. -on-conflict-target-columns should have accepted a list of strings instead. I'm working on it but I'd like an early review of the overall patch first.
3. I can't figure out how to add a test for pg_dump. Any pointer would be appreciated here.
Please help me review this patch as it's my first time submitting a patch to Postgres.