On Thu, Feb 17, 2011 at 11:45 AM, Stephen Frost <sfr...@snowman.net> wrote: > Robert, if you say this has to be punted to 9.2 again, I'm giving up. ;)
Frankly, this patch has already consumed more than its fair share of my attention. Having said that, I've just spent some more time on it. I tightened up both the code and the docs a bit. I fixed log_line_prefix so that it doesn't needlessly compute the value to be used for %U when %U isn't used. I fixed the CSV logging code to do proper escaping. Updated patch attached. It seems there's at least one more thing to worry about here, which is the overhead of this computation when CSV logging is in use. If no SET ROLE or SET SESSION AUTHORIZATION commands are in use, the code will call show_role(), which will return "none". We'll then strcmp() that against "none" and decide to call show_session_authorization(), which will call strtoul() to find the comma separator and then return a pointer to the string that follows it. Now, none of that is enormously expensive, so maybe it's not worth worrying about, but since logging can be a hotspot, I thought I'd mention it and solicit an opinion on whether that's likely to be a problem in practice. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
logrole-rmh.patch
Description: Binary data
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers