Re: Exception while updating result set

From: Prasanth <dbadmin(at)pangburngroup(dot)com>
To: pgsql-jdbc(at)lists(dot)postgresql(dot)org
Subject: Re: Exception while updating result set
Date: 2021-06-25 19:43:19
Message-ID: 3a872c1c-5872-2083-87c9-39db27767828@pangburngroup.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Sorry did not get the below email, just saw it in the website. Below is the sql.

"SELECT * FROM accounting_periods where plan_id = 30756 order by start_date";

Thanks,
Prasanth

On Thu, 25 Mar 2021 at 12:00, Prasanth <dbadmin(at)pangburngroup(dot)com> wrote:

> Hi,
>
> Does anyone have any thoughts on this?
>
> Thanks,
> Prasanth
>
> On 3/18/21 5:20 PM, Prasanth wrote:
>
> Hi,
>
> The following code generates an exception shown below. Commenting out the
> refreshRow() call would solve the issue. This exception happens only in
> driver versions 42.2.13 and above. Is this a bug in the driver?
>
> ResultSet rs =
> connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
> ResultSet.CONCUR_UPDATABLE ).executeQuery(sql);
> rs.next();
> rs.updateDate("start_date", Date.valueOf("2020-01-01"));
> rs.updateDate("end_date", Date.valueOf("2020-12-31"));
> rs.updateRow();
> rs.refreshRow();
> rs.updateDate("end_date", Date.valueOf("2020-12-30"));
> rs.updateRow(); // Exception occurs at this line.
>
>
> Exception in thread "main" java.lang.IllegalArgumentException: Attempted
> to write to readonly tuple
> at org.postgresql.core.Tuple.set(Tuple.java:96)
> at
> org.postgresql.jdbc.PgResultSet.setRowBufferColumn(PgResultSet.java:1680)
> at
> org.postgresql.jdbc.PgResultSet.updateRowBuffer(PgResultSet.java:1733)
> at org.postgresql.jdbc.PgResultSet.updateRow(PgResultSet.java:1378)
>
> Thanks,
> Prasanth
>
>

What is the query ?

From: Dave Cramer <davecramer(at)postgres(dot)rocks>
To: dbadmin(at)pangburngroup(dot)com
Cc: pgsql-jdbc(at)lists(dot)postgresql(dot)org
Subject: Re: Exception while updating result set
Date: 2021-03-29 14:19:13
Message-ID: CADK3HHK8WPCxbhoE4dTt=U0jpmtGWMT0okXY5oj5SAE1b7T26Q(at)mail(dot)gmail(dot)com <https://www.postgresql.org/message-id/CADK3HHK8WPCxbhoE4dTt%3DU0jpmtGWMT0okXY5oj5SAE1b7T26Q%40mail.gmail.com>
Views: Raw Message <https://www.postgresql.org/message-id/raw/CADK3HHK8WPCxbhoE4dTt%3DU0jpmtGWMT0okXY5oj5SAE1b7T26Q%40mail.gmail.com> | Whole Thread
<https://www.postgresql.org/message-id/flat/CADK3HHK8WPCxbhoE4dTt%3DU0jpmtGWMT0okXY5oj5SAE1b7T26Q%40mail.gmail.com> | Download mbox
<https://www.postgresql.org/message-id/mbox/CADK3HHK8WPCxbhoE4dTt%3DU0jpmtGWMT0okXY5oj5SAE1b7T26Q%40mail.gmail.com> | Resend email
<https://www.postgresql.org/message-id/resend/CADK3HHK8WPCxbhoE4dTt%3DU0jpmtGWMT0okXY5oj5SAE1b7T26Q%40mail.gmail.com>
Lists: pgsql-jdbc <https://www.postgresql.org/list/pgsql-jdbc/since/202103291419>

On 3/25/21 11:00 AM, Prasanth wrote:
> Hi,
>
> Does anyone have any thoughts on this?
>
> Thanks,
> Prasanth
>
> On 3/18/21 5:20 PM, Prasanth wrote:
>> Hi,
>>
>> The following code generates an exception shown below. Commenting out the refreshRow() call would solve the issue. This exception happens only in driver versions 42.2.13 and above. Is this a bug in
>> the driver?
>>
>>         ResultSet rs = connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE ).executeQuery(sql);
>>         rs.next();
>>         rs.updateDate("start_date", Date.valueOf("2020-01-01"));
>>         rs.updateDate("end_date", Date.valueOf("2020-12-31"));
>>         rs.updateRow();
>>         rs.refreshRow();
>>         rs.updateDate("end_date", Date.valueOf("2020-12-30"));
>>         rs.updateRow(); // Exception occurs at this line.
>>
>>
>> Exception in thread "main" java.lang.IllegalArgumentException: Attempted to write to readonly tuple
>>     at org.postgresql.core.Tuple.set(Tuple.java:96)
>>     at org.postgresql.jdbc.PgResultSet.setRowBufferColumn(PgResultSet.java:1680)
>>     at org.postgresql.jdbc.PgResultSet.updateRowBuffer(PgResultSet.java:1733)
>>     at org.postgresql.jdbc.PgResultSet.updateRow(PgResultSet.java:1378)
>>
>> Thanks,
>> Prasanth
>

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Prasanth 2021-06-25 20:55:27 Re: Exception while updating result set
Previous Message Dave Cramer 2021-06-22 12:47:03 [pgjdbc/pgjdbc]