[ 
https://issues.apache.org/jira/browse/CASSANDRA-17474?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Brandon Williams updated CASSANDRA-17474:
-----------------------------------------
     Bug Category: Parent values: Availability(12983)Level 1 values: Process 
Crash(12992)
       Complexity: Normal
      Component/s: Build
    Discovered By: User Report
         Severity: Normal
         Assignee: Brandon Williams
           Status: Open  (was: Triage Needed)

> Failed to instantiate SLF4J LoggerFactory in Cassandra 3.11.12
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-17474
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17474
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Build
>            Reporter: Tobias Gustafsson
>            Assignee: Brandon Williams
>            Priority: Normal
>         Attachments: logback.xml
>
>
> After upgrading to 3.11.12, Cassandra crashes on startup because of a class 
> that cannot be found in slf4j.
> {code}
> Failed to instantiate SLF4J LoggerFactory
> Reported exception:
> java.lang.NoClassDefFoundError: org/slf4j/event/LoggingEvent
>     at java.lang.Class.getDeclaredMethods0(Native Method)
>     at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
>     at java.lang.Class.privateGetPublicMethods(Class.java:2902)
>     at java.lang.Class.getMethods(Class.java:1615)
>     at 
> ch.qos.logback.core.joran.util.beans.BeanDescriptionFactory.create(BeanDescriptionFactory.java:35)
>     at 
> ch.qos.logback.core.joran.util.beans.BeanDescriptionCache.getBeanDescription(BeanDescriptionCache.java:47)
>     at 
> ch.qos.logback.core.joran.util.PropertySetter.<init>(PropertySetter.java:68)
>     at 
> ch.qos.logback.core.joran.action.NestedComplexPropertyIA.isApplicable(NestedComplexPropertyIA.java:65)
>     at 
> ch.qos.logback.core.joran.spi.Interpreter.lookupImplicitAction(Interpreter.java:233)
>     at 
> ch.qos.logback.core.joran.spi.Interpreter.getApplicableActionList(Interpreter.java:252)
>     at 
> ch.qos.logback.core.joran.spi.Interpreter.startElement(Interpreter.java:142)
>     at 
> ch.qos.logback.core.joran.spi.Interpreter.startElement(Interpreter.java:128)
>     at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:50)
>     at 
> ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:165)
>     at 
> ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:152)
>     at 
> ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:110)
>     at 
> ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:53)
>     at 
> ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:65)
>     at 
> ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:140)
>     at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84)
>     at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)
>     at org.slf4j.LoggerFactory.bind(LoggerFactory.java:129)
>     at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:108)
>     at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:302)
>     at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:276)
>     at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:288)
>     at 
> org.apache.cassandra.service.CassandraDaemon.<clinit>(CassandraDaemon.java:117)
> Caused by: java.lang.ClassNotFoundException: org.slf4j.event.LoggingEvent
>     at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
>     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
>     ... 27 more
> Exception in thread "main" java.lang.NoClassDefFoundError: 
> org/slf4j/event/LoggingEvent
>     at java.lang.Class.getDeclaredMethods0(Native Method)
>     at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
>     at java.lang.Class.privateGetPublicMethods(Class.java:2902)
>     at java.lang.Class.getMethods(Class.java:1615)
>     at 
> ch.qos.logback.core.joran.util.beans.BeanDescriptionFactory.create(BeanDescriptionFactory.java:35)
>     at 
> ch.qos.logback.core.joran.util.beans.BeanDescriptionCache.getBeanDescription(BeanDescriptionCache.java:47)
>     at 
> ch.qos.logback.core.joran.util.PropertySetter.<init>(PropertySetter.java:68)
>     at 
> ch.qos.logback.core.joran.action.NestedComplexPropertyIA.isApplicable(NestedComplexPropertyIA.java:65)
>     at 
> ch.qos.logback.core.joran.spi.Interpreter.lookupImplicitAction(Interpreter.java:233)
>     at 
> ch.qos.logback.core.joran.spi.Interpreter.getApplicableActionList(Interpreter.java:252)
>     at 
> ch.qos.logback.core.joran.spi.Interpreter.startElement(Interpreter.java:142)
>     at 
> ch.qos.logback.core.joran.spi.Interpreter.startElement(Interpreter.java:128)
>     at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:50)
>     at 
> ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:165)
>     at 
> ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:152)
>     at 
> ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:110)
>     at 
> ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:53)
>     at 
> ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:65)
>     at 
> ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:140)
>     at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84)
>     at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)
>     at org.slf4j.LoggerFactory.bind(LoggerFactory.java:129)
>     at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:108)
>     at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:302)
>     at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:276)
>     at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:288)
>     at 
> org.apache.cassandra.service.CassandraDaemon.<clinit>(CassandraDaemon.java:117)
> Caused by: java.lang.ClassNotFoundException: org.slf4j.event.LoggingEvent
>     at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
>     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
>     ... 27 more
> {code}
> It seems like the version of logback introduced in 
> https://issues.apache.org/jira/browse/CASSANDRA-17204 requires a more up to 
> date version of slf4j-api.jar than what is currently shipped with Cassandra 
> (see https://www.slf4j.org/codes.html#log4j_version).
> Replacing the shipped version (1.7.7) with the most recent 1.7.X (1.7.36 at 
> the time of this writing) seemingly solves the problem.  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to