On Thu, Feb 17, 2011 at 10:40 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Robert Haas <robertmh...@gmail.com> writes: >> On Thu, Feb 17, 2011 at 4:53 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: >>> In short, add a bit of overhead at SetUserId time in order to make this >>> cheap (and accurate) in elog.c. > >> As Stephen says, I think this is utterly impractical; those routines >> can't ever throw any kind of error. > > Why would they need to throw an error? It'd be on the caller's head to > supply the role name along with OID. We can keep the name in a static > buffer of size NAMEDATALEN, so don't tell me about palloc failures > either.
OK, but there are not a small number of callers of that function, and they don't necessarily have the correct info at hand. For example, you'd need to add prevUserAsText to TransactionStateData, which doesn't seem appealing. > The logging design as it stands seems to me to be a Rube Goldberg device > that is probably going to have corner-case bugs quite aside from its > possible performance issues. I think you're overreacting. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers