Uwe Schindler created LUCENE-7883:
-------------------------------------

             Summary: Remove references to Thread#getContextClassLoader() from 
Lucene/Solr codebase
                 Key: LUCENE-7883
                 URL: https://issues.apache.org/jira/browse/LUCENE-7883
             Project: Lucene - Core
          Issue Type: Improvement
            Reporter: Uwe Schindler
            Assignee: Uwe Schindler
            Priority: Critical
             Fix For: master (7.0)


As discussed in LUCENE-7873, the use of 
`Thread.currentThread().getContextClassLoader()` is in most cases a bug caused 
by sloppy usage of ClassLoader APIs and should be replaced by 
`getClass().getClassLoader()`.

In Lucene we only have the ClassPathResourceLoader, but this one can be solved 
by removing the "default" constructor. It only affects CustomAnalyzer, that 
should also be extended in Lucene 7.

The uses in Solr and its test are all to be replaced by 
`getClass().getClassLoader()` (except some workaround with clustering using a 
try-finally). This is in most cases historical code, when Solr was a web 
application to workaround some buggy webapp containers. In the current state, 
the code is "just wrong".

I'd like to get this into Lucene 7, as it affects some APIs in Lucene.



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

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

Reply via email to