On Thu, 1 Feb 2007, Kris Jurka wrote:
> On Mon, 22 Jan 2007, Do, Leon (Leon) wrote:
>
>> Sorry, it is my mistake. It is wrong data type.
>>
>
> Still there is a TODO item here. The driver shouldn't bail out with an
> ArrayIndexOutOfBoundsException. It might be best to fail immediately for a
> getBytes call on something that isn't bytea data. It's conceivable that you
> there is bytea escaped data in a text field, but really, what are the odds
> (and use cases) of that?
>
Checking the code behind this, I see:
AbstractJdbc2ResultSet.java:2150
if (fields[columnIndex - 1].getOID() == Oid.BYTEA)
{
return trimBytes(columnIndex,PGbytea.toBytes(this_row[columnIndex - 1]));
}
else
{
return trimBytes(columnIndex, this_row[columnIndex - 1]);
}
So the check I suggested already exists and I don't understand how you got
this error. Do you still have your test case handy?
Kris Jurka