Prefixing libpq error message with function names - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Prefixing libpq error message with function names
Date
Msg-id Pine.LNX.4.30.0107121818020.681-100000@peter.localdomain
Whole thread Raw
Responses Re: Prefixing libpq error message with function names  (Bruce Momjian <pgman@candle.pha.pa.us>)
Re: Prefixing libpq error message with function names  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Most, or at least half, of the error messages that libpq itself generates
look like "PQwhatever():  this and that went wrong", where PQwhatever is
usually the function that generates the error message.

I consider this practice ugly.  If PQwhatever is an exported API function,
then the users knows perfectly well what function the message came from.
In fact, a common idiom is
 if (PQsomething() != OK)   fprintf(stderr, "PQsomething: %s", PQerrorMessage(conn));

which is obviously going to look funky.

If PQwhatever is an internal function, then this practice is just plain
confusing to the user.  In some cases the code tries to be smart and pass
in the name of "front line" API function, but this doesn't really end up
helping anybody.

libpq is not complex and large enough that it would be tedious for a
developer to locate any given error message or derive the location in case
of a rare duplicate.  (I understand that in the backend this premise does
not necessarily hold, but I'm only talking about libpq.)

So would anyone object if I get rid of this while doing the i18n pass over
libpq?

-- 
Peter Eisentraut   peter_e@gmx.net   http://funkturm.homeip.net/~peter



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Child itemid in update-chain marked as unused - can't continue repair_frag
Next
From: Bruce Momjian
Date:
Subject: Re: Prefixing libpq error message with function names