> On Mar 11, 2021, at 1:59 PM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>
> On Thu, Mar 11, 2021 at 11:09 AM Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>> An alternate possibility would be to say that there should only ever
>> be EITHER a bare command-line argument OR options that require
>> querying for a list of databases OR neither BUT NOT both. Then it's
>> simple:
>>
>> 0. If you have both options which require querying for a list of
>> databases and also a bare database name, error and die.
>> 1. As above.
>> 2. As above except the only possibility is now increasing the list of
>> target databases from length 0 to length 1.
>> 3. As above.
>
> Here's a proposed incremental patch, applying on top of your last
> version, that describes the above behavior, plus makes a lot of other
> changes to the documentation that seemed like good ideas to me. Your
> mileage may vary, but I think this version is substantially more
> concise than what you have while basically containing the same
> information.
Your proposal is used in this next version of the patch, along with a resolution to the solution to the -D option handling, discussed before, and a change to make --schema and --exclude-schema options accept "database.schema" patterns as well as "schema" patterns. It previously only interpreted the parameter as a schema without treating embedded dots as separators, but that seems strangely inconsistent with the way all the other pattern options work, so I made it consistent. (I think the previous behavior was defensible, but harder to explain and perhaps less intuitive.)