You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Joe Obernberger <jo...@gmail.com> on 2020/02/05 22:53:33 UTC
NoClassDefFoundError - Faceting on 8.2.0
Hi All - getting this error intermittently on a solr cloud cluster.
Sometimes the heatmap generation works, sometimes not. I tracked it
down to some of the nodes are reporting this error:
null:java.lang.RuntimeException: java.lang.NoClassDefFoundError: Could not initialize class org.apache.solr.search.facet.FacetHeatmap$PngHelper
at org.apache.solr.servlet.HttpSolrCall.sendError(HttpSolrCall.java:733)
at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:591)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:423)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:350)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1602)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1711)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1347)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1678)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1249)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:152)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.Server.handle(Server.java:505)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
at org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:311)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:132)
at org.eclipse.jetty.http2.HTTP2Connection.produce(HTTP2Connection.java:170)
at org.eclipse.jetty.http2.HTTP2Connection.onFillable(HTTP2Connection.java:125)
at org.eclipse.jetty.http2.HTTP2Connection$FillableCallback.succeeded(HTTP2Connection.java:348)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:781)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:917)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.apache.solr.search.facet.FacetHeatmap$PngHelper
at org.apache.solr.search.facet.FacetHeatmap.asPngBytes(FacetHeatmap.java:406)
at org.apache.solr.search.facet.FacetHeatmap.formatCountsVal(FacetHeatmap.java:295)
at org.apache.solr.search.facet.FacetHeatmap.access$500(FacetHeatmap.java:68)
at org.apache.solr.search.facet.FacetHeatmap$FacetHeatmapProcessor.process(FacetHeatmap.java:251)
at org.apache.solr.search.facet.FacetRequest.process(FacetRequest.java:401)
at org.apache.solr.search.facet.FacetRequest.process(FacetRequest.java:392)
at org.apache.solr.handler.component.SpatialHeatmapFacets.getHeatmapForField(SpatialHeatmapFacets.java:50)
at org.apache.solr.request.SimpleFacets.getHeatmapCounts(SimpleFacets.java:1204)
at org.apache.solr.handler.component.FacetComponent.getFacetCounts(FacetComponent.java:334)
at org.apache.solr.handler.component.FacetComponent.process(FacetComponent.java:274)
at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:305)
at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:2578)
at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:780)
at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:566)
... 42 more
But that class is clearly present in the classpath in solr-core-8.2.0.jar. Any idea how this is happening?
Thank you!
-Joe Obernberger
Re: NoClassDefFoundError - Faceting on 8.2.0
Posted by Erick Erickson <er...@gmail.com>.
My first guess is that you have multiple or out-of-date jars in your classpath on those machines.
Best,
Erick
> On Feb 5, 2020, at 5:53 PM, Joe Obernberger <jo...@gmail.com> wrote:
>
> Hi All - getting this error intermittently on a solr cloud cluster. Sometimes the heatmap generation works, sometimes not. I tracked it down to some of the nodes are reporting this error:
>
> null:java.lang.RuntimeException: java.lang.NoClassDefFoundError: Could not initialize class org.apache.solr.search.facet.FacetHeatmap$PngHelper
> at org.apache.solr.servlet.HttpSolrCall.sendError(HttpSolrCall.java:733)
> at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:591)
> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:423)
> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:350)
> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1602)
> at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:540)
> at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
> at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
> at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
> at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1711)
> at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
> at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1347)
> at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
> at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
> at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1678)
> at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
> at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1249)
> at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
> at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:220)
> at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:152)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
> at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
> at org.eclipse.jetty.server.Server.handle(Server.java:505)
> at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
> at org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:311)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:132)
> at org.eclipse.jetty.http2.HTTP2Connection.produce(HTTP2Connection.java:170)
> at org.eclipse.jetty.http2.HTTP2Connection.onFillable(HTTP2Connection.java:125)
> at org.eclipse.jetty.http2.HTTP2Connection$FillableCallback.succeeded(HTTP2Connection.java:348)
> at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
> at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
> at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
> at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
> at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:781)
> at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:917)
> at java.lang.Thread.run(Thread.java:748)
> Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.apache.solr.search.facet.FacetHeatmap$PngHelper
> at org.apache.solr.search.facet.FacetHeatmap.asPngBytes(FacetHeatmap.java:406)
> at org.apache.solr.search.facet.FacetHeatmap.formatCountsVal(FacetHeatmap.java:295)
> at org.apache.solr.search.facet.FacetHeatmap.access$500(FacetHeatmap.java:68)
> at org.apache.solr.search.facet.FacetHeatmap$FacetHeatmapProcessor.process(FacetHeatmap.java:251)
> at org.apache.solr.search.facet.FacetRequest.process(FacetRequest.java:401)
> at org.apache.solr.search.facet.FacetRequest.process(FacetRequest.java:392)
> at org.apache.solr.handler.component.SpatialHeatmapFacets.getHeatmapForField(SpatialHeatmapFacets.java:50)
> at org.apache.solr.request.SimpleFacets.getHeatmapCounts(SimpleFacets.java:1204)
> at org.apache.solr.handler.component.FacetComponent.getFacetCounts(FacetComponent.java:334)
> at org.apache.solr.handler.component.FacetComponent.process(FacetComponent.java:274)
> at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:305)
> at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)
> at org.apache.solr.core.SolrCore.execute(SolrCore.java:2578)
> at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:780)
> at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:566)
> ... 42 more
>
> But that class is clearly present in the classpath in solr-core-8.2.0.jar. Any idea how this is happening?
> Thank you!
>
> -Joe Obernberger
>