pg.ddx.io  pgsql-bugs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: spsamaan@gmail.com
Cc: pgsql-bugs@lists.postgresql.org
Subject: Re: BUG #18777: Error running unnest function in a two phase commit transaction
Date: Thu, 16 Jan 2025 14:25:58 -0500
Message-ID: <1850521.1737055558@sss.pgh.pa.us> (raw)
In-Reply-To: <18777-3fa8180f86edfb55@postgresql.org>
References: <18777-3fa8180f86edfb55@postgresql.org>

PG Bug reporting form <noreply@postgresql.org> writes:
> I have a query " SELECT * FROM UNNEST(ARRAY[123456]) " running in a Groovy 4
> code. That code is running in a weblogic 14 server. The driver I'm using is
> postgresql-42.7.3.jar.
> When the weblogic datasource is configured as a Two-phase commit I got an
> error: 
> Caused by: org.postgresql.util.PSQLException: ERROR: function
> unnest(unknown) is not unique

Presumably what is happening is that the query actually being sent
to the server is something like

	SELECT * FROM UNNEST($1)

with no hint as to what the data type of $1 is, making it impossible
to infer the unnest's result type.  I don't know whether the JDBC
driver or weblogic is more at fault, but this isn't a server-side bug.
Some level on the client side has to take responsibility for
specifying the data type of the parameter.

			regards, tom lane





view thread (2+ messages)

Message-ID: <1850521.1737055558@sss.pgh.pa.us>
Permalink:  ../1850521.1737055558@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/1850521.1737055558@sss.pgh.pa.us

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-bugs@postgresql.org
  Cc: tgl@sss.pgh.pa.us, spsamaan@gmail.com, pgsql-bugs@lists.postgresql.org
  Subject: Re: BUG #18777: Error running unnest function in a two phase commit transaction
  In-Reply-To: <1850521.1737055558@sss.pgh.pa.us>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox