Bug? Reading items of array of composite a type - Mailing list pgsql-jdbc

From Daniel Dekany
Subject Bug? Reading items of array of composite a type
Date
Msg-id 255315797.20100920125555@freemail.hu
Whole thread Raw
Responses Re: Bug? Reading items of array of composite a type  (Daniel Dekany <ddekany@freemail.hu>)
List pgsql-jdbc
(Sorry for this is a duplicate of
http://pgfoundry.org/tracker/index.php?func=detail&aid=1010898&group_id=1000224&atid=854
but now I guess it's unused and you expect reports here?)

The items of an array of composite items are returned so that the
composite values will only have their first field returned correctly,
the second field will be a PGObject that represents the whole
composite value, and there will not be more fields.

Example:

  ResultSet rs = con.createStatement().executeQuery(
          "SELECT ARRAY[ROW(1,2,3)::some_composite_type]");
  while (rs.next()) {
      ResultSet arrayRs = rs.getArray(1).getResultSet();
      while (arrayRs.next()) {
          assert(arrayRs.getObject(1), 1); // Passes
          assert(arrayRs.getObject(2), 2); // Fails, it's PGObject "(1,2,3)"
          assert(arrayRs.getObject(3), 3); // Exception: there's only 2 columns
      }
  }

This same issue doesn't appear if the composite value is not an item of an array.

Versions:
  postgresql-8.4-702.jdbc4.jar and postgresql-9.0dev-800.jdbc4.jar
  PostgreSQL 8.3.11 (Win32)
  Java 1.6.0_20-b02

Working demonstration code:
  http://pgfoundry.org/tracker/download.php/1000224/854/1010898/547/PgJDBCBugDemo.java

--
Best regards,
 Daniel Dekany


pgsql-jdbc by date:

Previous
From: Devrim GÜNDÜZ
Date:
Subject: 9.0 JDBC drivers
Next
From: Lukas Eder
Date:
Subject: Re: java.sql.ResultSet.getTime() returns wrong time