It seems that updating innocent looking bundles cause the whole system to restart. We now had a case where a bundle containing some package was updated. This package was imported by the groovy bundle and the groovy bundle was imported by the commons.log bundle.
Unfortunately, the log4j.api bundle - which is imported by nearly almost every bundle - imports the impl package which is exported by the commons.log bundle.
Obviously the best solution would be if the log4j.api bundle would not import packages, but I guess that's not feasible the way log4j works.
Therefore we should have a look at our commons.log bundle to see whether we can reduce the imports, or the effect of other bundles being updated