[ 
https://issues.apache.org/jira/browse/SOLR-8657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15142825#comment-15142825
 ] 

Pascal Chollet commented on SOLR-8657:
--------------------------------------

To summarize, this is what happens:
# {{HttpSolrCall}} sets {{SolrRequestInfo}} for the manual commit request
# {{SolrCore.getSearcher(...)}} calls 
{{MDCAwareThreadPoolExecutor.execute(...)}} for all the listeners
# before running a new thread, {{MDCAwareThreadPoolExecutor.execute(...)}} 
stores {{SolrRequestInfo}} (containing the initial commit request) in {{ctx}}
# {{super.execute(...)}} is called to start a new thread and 
{{SolrRequestInfo.getInheritableThreadLocalProvider().set()}} sets {{ctx}} as 
{{SolrRequestInfo}} for this thread
# in that same thread {{QuerySenderListener}} also sets {{SolrRequestInfo}}, 
which then causes the error message

> SolrRequestInfo logs an error if QuerySenderListener is being used
> ------------------------------------------------------------------
>
>                 Key: SOLR-8657
>                 URL: https://issues.apache.org/jira/browse/SOLR-8657
>             Project: Solr
>          Issue Type: Bug
>    Affects Versions: 5.4.1
>            Reporter: Pascal Chollet
>         Attachments: Screen Shot 2016-02-10 at 09.43.56.png
>
>
> This is the stack trace:
> {code}
> at 
> org.apache.solr.request.SolrRequestInfo.setRequestInfo(SolrRequestInfo.java:59)
>         at 
> org.apache.solr.core.QuerySenderListener.newSearcher(QuerySenderListener.java:68)
>         at org.apache.solr.core.SolrCore$6.call(SolrCore.java:1859)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>         at 
> org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor$1.run(ExecutorUtil.java:232)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)
> {code}
> SolrRequestInfo is being set in MDCAwareThreadPoolExecutor.execute() and 
> later in QuerySenderListener.newSearcher() in the same thread.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to