22 messages in org.postgresql.pgsql-jdbcRe: Binary tx format for an array?
FromSent OnAttachments
Michael GuyverJun 21, 2006 10:26 am 
Dave CramerJun 21, 2006 12:55 pm 
Mark LewisJun 21, 2006 1:31 pm 
Tom LaneJun 21, 2006 3:40 pm 
Michael GuyverJun 22, 2006 1:16 am 
Tom LaneJun 22, 2006 9:54 am 
Mark LewisJun 22, 2006 12:15 pm 
Michael GuyverJun 23, 2006 1:22 am 
Dave CramerJun 23, 2006 4:43 am 
Markus SchaberJun 23, 2006 4:59 am 
Michael GuyverJun 23, 2006 5:46 am 
Dave CramerJun 23, 2006 5:56 am 
Dave CramerJun 23, 2006 6:16 am 
Tom LaneJun 23, 2006 9:18 am 
Mark LewisJun 23, 2006 1:31 pm 
Dave CramerJun 23, 2006 1:39 pm 
Kris JurkaJun 23, 2006 1:46 pm 
Mark LewisJun 23, 2006 1:59 pm 
Marc HerbertJul 10, 2006 2:19 am 
Mark LewisJul 10, 2006 9:18 am 
Marc HerbertJul 10, 2006 10:53 am 
Mark LewisJul 10, 2006 11:59 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: Binary tx format for an array?Actions...
From:Dave Cramer (pg@fastcrypt.com)
Date:Jun 23, 2006 5:56:07 am
List:org.postgresql.pgsql-jdbc

On 23-Jun-06, at 8:47 AM, Michael Guyver wrote:

:) good question, I'm sure I'll stare it in the face soon enough. At the moment I'm labouring under the impression that individual parameters can be specified as binary or text.

Unfortunately this is not possible. :( And one of the reasons that I've not spent a lot of time on this.

Hi Dave,

the page Message Formats (http://www.postgresql.org/docs/8.1/static/protocol-message- formats.html) specifies that the bind message should send the following for each parameter:

Int16 - The number of parameter format codes that follow (denoted C below). This can be zero to indicate that there are no parameters or that the parameters all use the default format (text); or one, in which case the specified format code is applied to all parameters; or it can equal the actual number of parameters.

Int16[C] - The parameter format codes. Each must presently be zero (text) or one (binary).

Does your understanding of the spec mean that the Int16[C] must either be an array containg all zero's, or all ones? It reads as though these can be mixed.

Actually, it's the return value that is either/or . It appears that input parameters can be mixed.

Tom can they be mixed going in ?

I'm very curious to see how much performance gain can be had here. As I said the real gains would be on result sets especially parsing date/ time, timestamps.