BUG #5637: JDBC driver method setClob always uses getAsciiStream()

From: "Jochen Terstiege" <jochen(dot)terstiege(at)quinscape(dot)de>
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #5637: JDBC driver method setClob always uses getAsciiStream()
Date: 2010-09-02 12:17:17
Message-ID: 201009021217.o82CHHT8041119@wwwmaster.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs


The following bug has been logged online:

Bug reference: 5637
Logged by: Jochen Terstiege
Email address: jochen(dot)terstiege(at)quinscape(dot)de
PostgreSQL version: 8.4
Operating system: Windows XP SP3
Description: JDBC driver method setClob always uses getAsciiStream()
Details:

Using driver: postgresql-8.4-701.jdbc3.jar

The method setClob() in the AbstractJdbc2Statement calls the method
getAsciiStream() on the provided Clob.
This leads to problems if the given Clob contains an UTF-8 encoded string.

Should the driver call getCharacterStream() instead? Can this problem be
solved in a different way?

Relevant code from the class:

public void setClob(int i, Clob x) throws SQLException
{
checkClosed();

if (x == null)
{
setNull(i, Types.CLOB);
return;
}

InputStream l_inStream = x.getAsciiStream();
...

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message KOIZUMI Satoru 2010-09-02 13:06:59 BUG #5638: disagreement of argument name
Previous Message Fabien COELHO 2010-09-02 05:54:46 Re: issue about information_schema REFERENTIAL_CONSTRAINTS