Project

General

Profile

Bug #14281

Updated by François ARMAND about 5 years ago

Example of an error that we would like to catch:  
 Error at rudder restart liftActor:NoClassDefFoundError 

 <pre> 
 Exception in thread "pool-7-thread-7" java.lang.NoClassDefFoundError: net/liftweb/actor/ActorLogger$ 
   at net.liftweb.actor.SpecializedLiftActor$$anonfun$exceptionHandler$1.applyOrElse(LiftActor.scala:345) 
   at net.liftweb.actor.SpecializedLiftActor$$anonfun$exceptionHandler$1.applyOrElse(LiftActor.scala:344) 
   at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:34) 
   at net.liftweb.actor.SpecializedLiftActor.proc2(LiftActor.scala:324) 
   at net.liftweb.actor.SpecializedLiftActor.$anonfun$processMailbox$1(LiftActor.scala:226) 
   at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12) 
   at net.liftweb.actor.SpecializedLiftActor.around(LiftActor.scala:240) 
   at net.liftweb.actor.SpecializedLiftActor.around$(LiftActor.scala:239) 
   at com.normation.rudder.batch.AutomaticReportsCleaning$LADatabaseCleaner.around(AutomaticReportsCleaner.scala:311) 
   at net.liftweb.actor.SpecializedLiftActor.processMailbox(LiftActor.scala:226) 
   at net.liftweb.actor.SpecializedLiftActor.$anonfun$$bang$3(LiftActor.scala:189) 
   at net.liftweb.actor.LAScheduler$$anon$2$$anon$3.run(LiftActor.scala:76) 
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
   at java.lang.Thread.run(Thread.java:748) 
 </pre> 

 This happens when old classes are not cleanly unloaded, most likely because jetty didn't stop correctly. 

 WORKAROUND: stop rudder-jetty ; check that jetty is stopped ; start rudder-jetty 


 Other example include "java.lang.OutOfMemoryError", "java.lang.StackOverflowError", ... In fact I think all java.errors.

Back