On Tue, Aug 7, 2018 at 11:29 AM, Tom Lane <t...@sss.pgh.pa.us> wrote:
> Stephen Frost <sfr...@snowman.net> writes: > > * Tom Lane (t...@sss.pgh.pa.us) wrote: > >> But having said that, I don't exactly see why you couldn't force it > >> with an ultimately-redundant SetConfigOption call to put the value > >> in place before the ereport happens. The GUC machinery is surely > >> functional before we do authorization. > > > If that's the approach you think makes the most sense, I wouldn't object > > to it. I will point out that we'd end up with the application name in > > the log line if it's also included in log_line_prefix, but that's what > > happens with "user" anyway, isn't it?, so that doesn't seem to be a big > > deal. I do think it's still good to have appplication_name explicitly > > in the log message for users who want to just log application_name on > > connection and not have it on every single log line. > > Well, if you're going to insist on that part, it's probably not worth > making the application_name GUC have inconsistent behavior. > > regards, tom lane > OK so just to make sure I understand: 1. We want to make a generic, central ascii-lobotomizing function similar to check_application_name that we can re-use there and for other checks (eg user name). 2. Change check_application_name to call this function (or just call this function instead of check_application_name()?) 3. Call this function when storing the value in the port struct. Please let me know if I'm missing/misunderstanding anything. Don. -- Don Seiler www.seiler.us