Click here to Skip to main content
15,892,059 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
hi,
I have created one package in oracle 11.2 version.
i have tested in dev and test environments and working absolutely fine .
we have deployed this package into production database then we are getting below issue .

ORA-21780: Maximum number of object durations exceeded

we used collections,'bulk collect into' and joins to create this package .
can anybody tell me why we are facing this memory leakage issue from oracle while executing this package.

thanks in advance.
Posted
Updated 5-Feb-14 19:10pm
v3
Comments
Jörgen Andersson 31-Jan-14 7:33am    
There's absolutely no chance to help you based on the info you provide.
What error message do you get?
How does the package look like?
What is the difference between the environments?

1 solution

This happens when you have to many objects (>64000 per session) that doesn't go out of scope. This commonly happens if you have an infinite recursion.
If this isn't the problem it might help to make intermediate commits[^]. Or having more than one transaction.
 
Share this answer
 
Comments
samulcristina 4-Mar-14 2:03am    
thanks Andy,i understood the solution and have to put intermediate commits while calling objects to free the memory.as per me i need to use OCICacheFree() function to release memory after complete the session.
could you please give me an example how to use the above function in the package.

thanks in advance!!!!
Jörgen Andersson 4-Mar-14 2:40am    
The Oracle Call Interface is Clientside and can't be used in a package.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900