Weird error message in SQL function call
Hi all.
I've got this error message while running an SQL function:
---- BEGIN
psql:filtb.sql:1029: ERROR: COMMIT is not allowed in a SQL function
CONTEXT: SQL function "f_relazione" during startup
funzione SQL "f_relazione" istruzione 1
---- END
Of course, I have no COMMIT command either in the function itself or
in any other function called by f_relazione().
In the syslog I see that this is labelled as error #0A000 "Feature not
supported".
Is there any hint?
--
Vincenzo Romano
--
Maybe Computer will never become as intelligent as Humans.
For sure they won't ever become so stupid. [VR-1988]
Vincenzo Romano wrote:
Hi all.
I've got this error message while running an SQL function:
---- BEGIN
psql:filtb.sql:1029: ERROR: COMMIT is not allowed in a SQL function
CONTEXT: SQL function "f_relazione" during startup
funzione SQL "f_relazione" istruzione 1
---- ENDOf course, I have no COMMIT command either in the function itself or
in any other function called by f_relazione().
Seeing as you are reading in a large .sql file, I'd look for a quoting
error - if the closing quote for the function-body isn't correct it'll
run on, and then encounter a COMMIT further down the file.
--
Richard Huxton
Archonet Ltd
On Monday 16 July 2007 12:18:23 Richard Huxton wrote:
Vincenzo Romano wrote:
Hi all.
I've got this error message while running an SQL function:
---- BEGIN
psql:filtb.sql:1029: ERROR: COMMIT is not allowed in a SQL
function CONTEXT: SQL function "f_relazione" during startup
funzione SQL "f_relazione" istruzione 1
---- ENDOf course, I have no COMMIT command either in the function itself
or in any other function called by f_relazione().Seeing as you are reading in a large .sql file, I'd look for a
quoting error - if the closing quote for the function-body isn't
correct it'll run on, and then encounter a COMMIT further down the
file.
You hit the spot!
The actual problem was in a deeper function body that used to be
PgPLSQL and is now SQL.
A spurious "END;" in the end of the body was being interpreted as a
COMMIT;
Thanks.
--
Vincenzo Romano
--
Maybe Computer will never become as intelligent as Humans.
For sure they won't ever become so stupid. [VR-1988]