Re: [INTERFACES] Upgrading the backend's error-message infrastructure
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Jean-Luc Lachance <jllachan@nsd.ca>
Cc: pgsql-hackers@postgresql.org, pgsql-interfaces@postgresql.org
Date: 2003-03-13T22:04:05Z
Lists: pgsql-hackers
Jean-Luc Lachance <jllachan@nsd.ca> writes: > Why trade 5 characters for a 4 byte integer -- a saving of 1 byte? It's more than that: in one case you have something on the order of a "load immediate" instruction, whereas in the other case the code is like "load pointer to global string", plus you need a 6-byte string literal (maybe costing you 8 bytes depending on alignment considerations). Also, depending on your machine's approach to addressing of global data, that "load pointer" thingy could be multiple instructions. So we're talking about at least six, possibly 8-12 bytes per elog call --- and there are thousands of 'em in the backend. Admittedly, it's a micro-optimization, but it seems worth doing since it won't have any direct impact on code legibility. regards, tom lane