On 8/16/11 5:56 AM, Bergquist, Brett wrote:
I am writing a database copy utility that is built upon the dblook utility and
using the SYSCS_UTIL.SYSCS_EXPORT_TABLE and SYSCS_UTIL.SYSCS_IMPORT_TABLE
procedures and I have this mostly working. When running this on a large
database (110Gb) I am getting an OutOfMemory exception. I have the utility
setup to use up to 8192Mb of memory so somewhere there is a problem. I am
running this again with the -XX:+HeapDumpOnOutOfMemoryError switch to see if I
can get a picture on where it is leaking but it will take about 6 hours to get
to this point.
In the mean time, assuming the error is not in my utility, I would like to
potentially shutdown the database and restart it to try to work around the
OOME. I am running the database engine in embedded mode and see the
documentation to shutdown the database, but I also see the following in the
Derby 10.8 Reference manual page 293:
"With the embedded driver, if your application shuts down Derby or calls the
DriverManager.unload method, and you then want to reload the driver, call the
Class.forName().newInstance() method to do so:"
When I look at the Javadoc for the DriverManager class, I do not find an
"unload" method. So what is this documentation referring to?
Hi Brett,
That looks like an error in the documentation. I believe it is supposed
to refer to DriverManager.deregisterDriver(). I have logged
https://issues.apache.org/jira/browse/DERBY-5384 to track this.
Thanks for finding this bug,
-Rick
Thanks
Brett