David Smiley created SOLR-11659:
-----------------------------------

             Summary: JMX Metrics ObjectName needs comma escaping for 
/solr/col1,col2/select scenario
                 Key: SOLR-11659
                 URL: https://issues.apache.org/jira/browse/SOLR-11659
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
          Components: metrics
    Affects Versions: 7.2
            Reporter: David Smiley


As of SOLR-11444 it's possible to query Solr with /solr/col1,col2/select and 
query both.  Some of Solr's JMX stuff apparently can't handle this.  I found 
the following exception during testing in AliasIntegrationTest.test line 240 
(when uncommented) and with a particular seed that for whatever reason isn't 
reproducing for me as I write this.

{noformat}
10387 ERROR (qtp547916181-25) [n:127.0.0.1:57605_solr    ] o.a.s.s.HttpSolrCall 
null:java.lang.RuntimeException: 
solr_57605:dom1=solr,dom2=node,category=UPDATE,scope=updateShardHandler,name=http_//127.0.0.1_57604/solr/testalias4,testalias5/select.get.requests
        at 
org.apache.solr.metrics.reporters.jmx.JmxObjectNameFactory.createName(JmxObjectNameFactory.java:169)
        at 
org.apache.solr.metrics.reporters.jmx.JmxMetricsReporter$JmxListener.createName(JmxMetricsReporter.java:692)
        at 
org.apache.solr.metrics.reporters.jmx.JmxMetricsReporter$JmxListener.onTimerAdded(JmxMetricsReporter.java:669)
        at 
com.codahale.metrics.MetricRegistry.notifyListenerOfAddedMetric(MetricRegistry.java:462)
        at 
com.codahale.metrics.MetricRegistry.onMetricAdded(MetricRegistry.java:448)
        at com.codahale.metrics.MetricRegistry.register(MetricRegistry.java:89)
        at com.codahale.metrics.MetricRegistry.getOrAdd(MetricRegistry.java:423)
        at com.codahale.metrics.MetricRegistry.timer(MetricRegistry.java:211)
        at 
org.apache.solr.util.stats.InstrumentedHttpRequestExecutor.timer(InstrumentedHttpRequestExecutor.java:127)
        at 
org.apache.solr.util.stats.InstrumentedHttpRequestExecutor.execute(InstrumentedHttpRequestExecutor.java:115)
        at 
org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:272)
        at 
org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
        at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
        at 
org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111)
        at 
org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
        at 
org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
        at 
org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
        at 
org.apache.solr.servlet.HttpSolrCall.remoteQuery(HttpSolrCall.java:618)
        at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:500)
        at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:382)
        at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:326)
        at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1759)
        at 
org.apache.solr.client.solrj.embedded.JettySolrRunner$DebugFilter.doFilter(JettySolrRunner.java:139)
        at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1759)
        at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582)
        at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:224)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
        at 
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)
        at 
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
        at 
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
        at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
        at 
org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:493)
        at 
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
        at org.eclipse.jetty.server.Server.handle(Server.java:534)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
        at 
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
        at 
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108)
        at 
org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
        at 
org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
        at 
org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
        at 
org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
        at 
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
        at java.lang.Thread.run(Thread.java:745)
Caused by: javax.management.MalformedObjectNameException: Unterminated key 
property part
        at javax.management.ObjectName.construct(ObjectName.java:556)
        at javax.management.ObjectName.<init>(ObjectName.java:1382)
        at 
org.apache.solr.metrics.reporters.jmx.JmxObjectNameFactory.createName(JmxObjectNameFactory.java:167)
        ... 44 more
{noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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

Reply via email to