Re: Documentation problem with LargeObjectManager

From: David Goodenough <david(dot)goodenough(at)btconnect(dot)com>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: Documentation problem with LargeObjectManager
Date: 2008-03-31 08:43:54
Message-ID: 200803310943.56663.david.goodenough@btconnect.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

On Monday 31 March 2008, Kris Jurka wrote:
> David Goodenough wrote:
> > In http://jdbc.postgresql.org/documentation/82/binary-data.html it says
> > that the return from LargeObjectManager.create is a long, but the actual
> > code seems to return an int, which is also what the read and write
> > methods seem to want as OID. Is this a code or a documentation problem?
> > The docs are the same for 8.3.
>
> The docs refer to createLO which does return long, not create which
> returns int. OID is unsigned int, but since Java doesn't have unsigned
> types we need to use long. This was added relatively recently, as the
> original API didn't consider that requirement, so that's why we have a
> slight mix of function signatures. In any case you should be using the
> long versions and the int versions should be marked as deprecated.
>
> Kris Jurka

OK, my problem was that the 8.2 JDBC driver (which is the most recent
in Debian) did not have the long versions. I have now downloaded the jar
file from the postgresql web site and I see the long versions.

However this has shown up another problem. The createLO shown in the
docs has an arguement, but the JDBC4 jar file says that this createLO is
deprecated, and I presume I should use the no arguement version.

David

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Sam Lawrence 2008-03-31 15:29:11 CallableStatement and getUpdateCount
Previous Message Kris Jurka 2008-03-31 04:11:06 Re: Documentation problem with LargeObjectManager