Mark Dilger <mark.dil...@enterprisedb.com> writes: > The patch submitted changes processSQLNamePattern() to return a dot count by > reference. It's up to the caller to decide whether to raise an error. If > you pass in no schemavar, and you get back dotcnt=2, you know it parsed it as > a two part pattern, and you can pg_fatal(...) or ereport(ERROR, ...) or > whatever.
Well, I'm not telling Robert what to do, but I wouldn't accept that API. It requires duplicative error-handling code at every call site and is an open invitation to omitting necessary error checks. Possibly a better idea is to add an enum argument telling the function what to do (parse the whole thing as one name regardless of dots, parse as two names if there's a dot, throw error if there's a dot, etc etc as needed by existing call sites). Perhaps some of the existing arguments could be merged into such an enum, too. regards, tom lane