[Pljava-dev] ResultSetHandle and TupleDesc reference leak?

Lucas Madar lucas at mcsnw.com
Sat Jan 5 09:57:44 UTC 2008


I have a program using ResultSetHandle and the first time a new  
session uses the function, a warning pops up:

WARNING:  TupleDesc reference leak: TupleDesc 0x750bcb0 (10307,-1)  
still referenced

To be sure this wasn't my code, I used the exact example code shown in http://wiki.tada.se/display/pljava/Functions+returning+sets 
.

# select * from javatest.listNonSupers();
WARNING:  TupleDesc reference leak: TupleDesc 0x57aba8 (10307,-1)  
still referenced
  usename  | usesysid | usecreatedb | usesuper | usecatupd |  passwd   
| valuntil | useconfig
----------+----------+-------------+----------+-----------+---------- 
+----------+-----------
  xxxxxxxx |    24576 | f           | f        | f         | ********  
|          |
  xxxxxxxx |    32768 | f           | f        | f         | ********  
|          |

Everything seems to work properly, but the warning is somewhat  
disconcerting.

Also, I've run into an issue using setSavePoint()... after the  
function ends and the savepoint has been released, the results  
returned in the resultsethandle cannot be used in anything except a  
simple select. Using them as a select into or inside another function  
fails, saying 'ERROR:  buffer xxx is not owned by resource
owner TopTransaction.' If I don't use savepoints, I don't run into  
this issue. My workaround has been to wrap the java function in a  
plsql function and use commit/rollback there.

Thanks,
Lucas Madar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://pgfoundry.org/pipermail/pljava-dev/attachments/20080105/97f1ab87/attachment.html 


More information about the Pljava-dev mailing list