Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

QPID-7372, hasn't been fixed fully, there is still code dependency on logback #13

Open
wants to merge 4 commits into
base: 6.1.x
Choose a base branch
from

Conversation

yakuninv
Copy link

Here we have hardcoded dependency on logback which makes broker fail to start when using https://github.com/daknin/qpid-maven-plugin/, because maven uses org.slf4j.impl.SimpleLogger.

Exception:
Caused by: java.lang.ClassCastException: org.slf4j.impl.SimpleLogger cannot be cast to ch.qos.logback.classic.Logger
at org.apache.qpid.server.Broker$1.run(Broker.java:147)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.qpid.server.Broker.startup(Broker.java:142)
at com.github.daknin.qpid.plugin.QpidBroker.start(QpidBroker.java:43)

Here we have hardcoded dependency on logback which makes broker fail to start when using https://github.com/daknin/qpid-maven-plugin/, because maven uses org.slf4j.impl.SimpleLogger.

Exception:
Caused by: java.lang.ClassCastException: org.slf4j.impl.SimpleLogger cannot be cast to ch.qos.logback.classic.Logger
	at org.apache.qpid.server.Broker$1.run(Broker.java:147)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:422)
	at org.apache.qpid.server.Broker.startup(Broker.java:142)
	at com.github.daknin.qpid.plugin.QpidBroker.start(QpidBroker.java:43)
Fixing failed build pipeline
Fixing build again
@rgodfrey
Copy link
Contributor

The scope of QPID-7372 was to remove the dependency on logback from the broker-core module, so it's not correct to say that "it hasn't been fully fixed" - the class you are modifying here is not in broker-core, but "broker". The "broker" module is expected to have specific dependencies (it essentially provides a specific implementation for starting the broker) that are left open in broker-core.

As you can see, on master this code has changed around a bit now with a slightly better separation of the logic between broker and broker-core (IMHO).

Since 6.1.x is essentially in maintenance only, and the relevant area has changed for 7.x and beyond I don't think it makes sense to try to apply changes here

@nitin1706
Copy link

Please update the version of dependency com.sleepycat:je::7.4.5 as the dependency is not available.

@alex-rufous
Copy link
Contributor

Hi nitin1706,
com.sleepycat:je::7.4.5 is compiled with java8 whilst Qpid 6.x is java 7 compatible. In order to keep Qpid 6.x java7 compatible, we cannot upgrade JE to version 7.4.5. Please, use Qpid 7.0.x. It already depends on com.sleepycat:je::7.4.5.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants