You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Namgyu Kim (Jira)" <ji...@apache.org> on 2021/01/13 15:19:00 UTC
[jira] [Comment Edited] (LUCENE-9661) Another classloader deadlock?
[ https://issues.apache.org/jira/browse/LUCENE-9661?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17264209#comment-17264209 ]
Namgyu Kim edited comment on LUCENE-9661 at 1/13/21, 3:18 PM:
--------------------------------------------------------------
Hi [~dsmiley] and [~mdrob],
*To David*
{quote}Couldn't this sort of thing be caught via static analysis? Classes that refer to their subclasses?
Perhaps not that broad but it's a start.
I don't see an IntelliJ "Intention" for anything like this; perhaps there is something for other tools?
{quote}
I'm not sure if we can catch that by using static analysis.
IntelliJ is providing inspection for that.
You can configure it through the following guide.
(File -> Settings -> Editor -> Inspections -> Static initializer references subclass)
Here is a screenshot.
!deadlock inspections.jpg|width=819,height=588!
If we use only IntelliJ for ide, I think that setting the severity option to Error can be a good idea.
But I didn't checked if Netbeans and Eclipse provide it.
*To Mike*
{quote}There's an IntelliJ inspection that I've seen for classes referring to subclasses before.
{quote}
Yeah. Is it the same option as the above?
was (Author: danmuzi):
Hi [~dsmiley] and [~mdrob],
{quote}Couldn't this sort of thing be caught via static analysis? Classes that refer to their subclasses?
Perhaps not that broad but it's a start.
I don't see an IntelliJ "Intention" for anything like this; perhaps there is something for other tools?
{quote}
I'm not sure if we can catch that by using static analysis.
IntelliJ is providing inspection for that.
You can configure it through the following guide.
(File -> Settings -> Editor -> Inspections -> Static initializer references subclass)
Here is a screenshot.
!deadlock inspections.jpg|width=819,height=588!
If we use only IntelliJ for ide, I think that setting the severity option to Error can be a good idea.
But I didn't checked if Netbeans and Eclipse provide it.
{quote}There's an IntelliJ inspection that I've seen for classes referring to subclasses before.
{quote}
Yeah. Is it the same option as the above?
> Another classloader deadlock?
> -----------------------------
>
> Key: LUCENE-9661
> URL: https://issues.apache.org/jira/browse/LUCENE-9661
> Project: Lucene - Core
> Issue Type: Bug
> Affects Versions: 8.0, master (9.0)
> Reporter: Michael McCandless
> Priority: Blocker
> Fix For: master (9.0), 8.8
>
> Attachments: deadlock inspections.jpg, deadlock_test.patch
>
>
> The {{java}} processes spawned by our Lucene nightly benchmarks sometimes randomly hang, apparently while loading classes across threads, under contention.
> I've opened [this {{luceneutil}} issue with some details|https://github.com/mikemccand/luceneutil/issues/89], but [~uschindler] suggested I open an issue here too since he has been seeing this in CI builds too.
> It is rare, maybe once a week in the nightly benchmarks (which spawn many {{java}} processes with many threads across 128 CPU cores). It is clearly a deadlock – when it strikes, the process hangs forever until I notice and {{kill -9}} it. I posted a coupled {{jstacks}} in the issue above.
> [~rcmuir] suggested using {{classcycle}} to maybe statically dig into possible deadlocks ... I have not tried that yet.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org