Hello!
I've upgraded my systems to use 6.0.11 instead of 5.0.97. Everything works fine, storage is 20+ percent more compact and so on, BUT.
1) Under load (all the time) on production server, after every 25-40 minutes uptime the
> (JE 6.0.11) Environment must be closed, caused by: com.sleepycat.je.EnvironmentFailureException: Environment invalid because of previous exception: (JE 6.0.11) /usr/local/ae3/private/data/bdbj-lcl java.lang.AssertionError UNCAUGHT_EXCEPTION: Uncaught Exception in internal thread, unable to continue. Environment is invalid and must be closed.
> com.sleepycat.je.EnvironmentFailureException
> Environment invalid because of previous exception: (JE 6.0.11) /usr/local/ae3/private/data/bdbj-lcl java.lang.AssertionError UNCAUGHT_EXCEPTION: Uncaught Exception in internal thread, unable to continue. Environment is invalid and must be closed.
> com.sleepycat.je.EnvironmentFailureException
> null
> java.lang.AssertionError
: com.sleepycat.je.evictor.LRUEvictor.processTarget(LRUEvictor.java:2014)
: com.sleepycat.je.evictor.LRUEvictor.findParentAndRetry(LRUEvictor.java:2182)
: com.sleepycat.je.evictor.LRUEvictor.processTarget(LRUEvictor.java:2019)
: com.sleepycat.je.evictor.LRUEvictor.evictBatch(LRUEvictor.java:1689)
: com.sleepycat.je.evictor.LRUEvictor.doEvict(LRUEvictor.java:1538)
: com.sleepycat.je.evictor.Evictor$BackgroundEvictTask.run(Evictor.java:739)
: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
: java.lang.Thread.run(Thread.java:724)
error appears and floods everything, I have to restart the instance and then it works another 30 minutes approx.
Same thing was happening on non heavy loaded (all) servers during log file upgrade to new format, timing was random tough. None of the environments that are bigger than 1G size were upgraded 'in one go' - I had to restart several times because of the same error.
2) I had to reduce the number of cleaner threads to 1 (config.setConfigParam( EnvironmentConfig.CLEANER_THREADS, "1" )) - otherwise it was not starting AT ALL, on every database instance it was failing on with words like "expect BEING_CLEANED but CLEANED"
I am using low-level BDB JE API with cursors and byte arrays. No secondary databases. No DPL. Does anyone experiencing anything like that?