Dieter Maurer wrote:
Shai Berger writes:
... excess Oracle processes and zombies ... I have checked our installation and can confirm that both problems have gone.
We do not yet know what caused the excess Oracle processes. After an increase of Zope's ZODB cache and an upgrade to the newest DCOracle, the problem simply went away.
Do you have a DCOracle version later than 1.3.2? We use 1.3.2; we have increased the cache from 400 (the default) to 1000, to no avail. Our ZODB size, last I checked, was ~40M. I remember you mentioning that yours was less then 10M, I think; how much cache do you use?
We do know what caused our zombie processes: a bug in the Oracle Java runtime library: they had added a "NOWAIT" flag to their "wait" calls. This ensured that a "wait" call does not release the Zombie child but keeps it in its state. As a consequence, each process started from Java became a Zombie process.
Zope starts Oracle processes from Java??? All the zombies we see are Zope-spawned... a Zope zombie-collection problem has been reported independently of Oracle.
As Oracle reported, the problem was introduced in 8.1.6 and should be fixed in 8.1.7.
...which confuses me, because we use 8.0.5. Thanks, Shai.