Error message translation, with variable reason text

Started by Simon Riggsabout 16 years ago2 messages
#1Simon Riggs
simon@2ndQuadrant.com

I have an ereport() in the HS patch that looks like this
ereport(trace_recovery(DEBUG1),
(errmsg("recovery cancels virtual transaction %u/%u pid %d because of
conflict with %s",
waitlist->backendId,
waitlist->localTransactionId,
pid,
reason)));

The purpose of this is to give an LOG message with a variable reason
code. Should I worry about the translatability of something that exists
for DEBUG, and if so, what is the best/approved/recommended way of
making a message both translatable and variable?

Thanks,

--
Simon Riggs www.2ndQuadrant.com

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Simon Riggs (#1)
Re: Error message translation, with variable reason text

Simon Riggs <simon@2ndQuadrant.com> writes:

The purpose of this is to give an LOG message with a variable reason
code. Should I worry about the translatability of something that exists
for DEBUG,

Probably not.  I don't even think you should use ereport, just elog
--- or if there's a good functional reason to use ereport, use
errmsg_internal so that translators don't see this message.

regards, tom lane