-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Jericho 3.4 requires log4j-2.4.1 while Solr still uses 1.2.17 #48
Comments
Wouldn't a test hit this? Looking at Jericho's POM http://mvnrepository.com/artifact/net.htmlparser.jericho/jericho-html/3.4 I see it's loggers are listed as optional. It seems it shouldn't matter? But somehow you hit this exception so it does. |
Yeah I'll try to determine a root cause but it's not high priority. I just
|
+1 |
My suspicion is that Jericho's internal logger picking algorithm might have a Log4j impl detecting one that isn't compatible with Solr. We might need to manually tell it which one to use. See http://jericho.htmlparser.net/docs/javadoc/net/htmlparser/jericho/Config.html#LoggerProvider I would appreciate it if someone tinkers with this further so we can get this fixed. It appears it'd require a one-liner at the spot where we first reference Jericho to set it's logger to |
BTW FWIW Solr 7.4 (not released yet) now uses Log4j 2. So whatever's going on here should soon become a non-issue. |
Any updates on this issue? We are also getting this issue. 2018-07-26 15:17:45,872 [http-nio-8080-exec-4] ERROR - 74: (doFilter) Filter [JSPFilter]; |
@nageshgnn did you see my comment where I said "It appears it'd require a one-liner at the spot where we first reference Jericho to set it's logger to LoggerProvider.SLF4J" Does that help? What version of Solr are you using? |
Thanks @dsmiley for a resonse. Group ID: org.springframework.boot
|
By showing me a Maven POM, I suspect the situation is a bit different than the start of the conversation/issue above. What does your Spring Boot app have to do with Solr? Is it the client of Solr? If so, it doesn't need the Solr Text Tagger, only SolrJ to communicate with Solr -- and in that case there you should communicate with the Apache Solr project mailing list or other support resources, not this plugin which runs inside Solr. Or maybe you are embedding Solr via EmbeddedSolrServer? In that case, especially with bringing in whatever other frameworks you have and their own logging dependencies, this becomes a general Java question of how to use Maven to include the right logging libraries while excluding the ones you don't want (sadly a common and annoying problem), and not so much an issue specific to this plugin. |
It appears that Solr is locked in still at 1.2.17 (log4j version: https://github.com/apache/lucene-solr/blob/master/lucene/ivy-versions.properties#L83 and slf4j-log4j12 version: https://github.com/apache/lucene-solr/blob/master/lucene/ivy-versions.properties#L296) while Jericho 3.4 uses the latest log4j library. When the SolrTextTagger hits the Jericho lib, it'll throw the error listed below.
Jericho's release notes state:
Error:
The text was updated successfully, but these errors were encountered: