And how do we compose the binary data on the client? Do we trust that the client encoding conversion logic is identical to the backend's? If there is a difference, what happens if the same file loaded from different client machines has different results? Key conflicts when loading a restore from one machine and not from another? - Luke -------------------------- Sent from my BlackBerry Wireless Device
-----Original Message----- From: Mitch Skinner <[EMAIL PROTECTED]> To: Luke Lonergan <[EMAIL PROTECTED]> CC: Stephen Frost <[EMAIL PROTECTED]>; David Lang <[EMAIL PROTECTED]>; Steve Oualline <[EMAIL PROTECTED]>; pgsql-performance@postgresql.org <pgsql-performance@postgresql.org> Sent: Fri Dec 02 22:26:06 2005 Subject: Re: [PERFORM] Database restore speed On Fri, 2005-12-02 at 13:24 -0800, Luke Lonergan wrote: > It's a matter of safety and generality - in general you > can't be sure that client machines / OS'es will render the same conversions > that the backend does in all cases IMO. Can't binary values can safely be sent cross-platform in DataRow messages? At least from my ignorant, cursory look at printtup.c, there's a binary format code path. float4send in utils/adt/float.c uses pq_sendfloat4. I obviously haven't followed the entire rabbit trail, but it seems like it happens. IOW, why isn't there a cross-platform issue when sending binary data from the backend to the client in query results? And if there isn't a problem there, why can't binary data be sent from the client to the backend? Mitch ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings