[
https://issues.apache.org/jira/browse/SOLR-7803?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Uwe Schindler updated SOLR-7803:
--------------------------------
Attachment: SOLR-7803.patch
I did a bit more refactoring:
- rename DateUtils -> DateFormatUtil (the other name was somehow a confusing
duplicate, so Eclipse autocomplete showed too much unspecific stuff).
- I removed more formatting methods out of TrieDateField. TrieDateField is now
as any other Trie(Long|Int|Double|Float)Field - short and compact.
I will commit this later and add backwards layer in 5.x. All tests pass.
> Classloading deadlock in TrieField
> ----------------------------------
>
> Key: SOLR-7803
> URL: https://issues.apache.org/jira/browse/SOLR-7803
> Project: Solr
> Issue Type: Bug
> Affects Versions: 5.2.1
> Environment: OSX, JDK8u45
> Reporter: Markus Heiden
> Assignee: Uwe Schindler
> Labels: patch
> Fix For: 5.3, Trunk
>
> Attachments: SOLR-7803.patch, SOLR-7803.patch, TrieField.patch
>
>
> When starting a test Sol instance, it locks up sometimes. We took a thread
> dump and all threads are trying to load classes via Class.forName() and are
> stuck in that method. One of these threads got one step further into the
> <clinit> of TrieField where it creates an internal static instance of
> TrieDateField (circular dependency). I don't know why this locks up exactly,
> but this code smells anyway. So I removed that instance and made the used
> methods static in TrieDateField.
> This does not completely remove the circular dependency, but at least it is
> no more in <clinit>. For the future someone may extract a util class to
> remove the circular dependency.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]