GitHub user jwagenleitner opened a pull request:
https://github.com/apache/groovy/pull/489
GROOVY-8067: Possible deadlock when creating new ClassInfo entries in the
cache
As suggested in PR #484 removed the locking on the `ManagedLinkedList` by
creating a new `ManagedConcurrentLinkedQueue`.
Also added a `stress` subproject for tests that employ many threads, need
GC, or just in general try to break things and take a long time. These require
a special property to be set in order to run, otherwise they will be skipped.
I tried to work it out in the `performance` subproject, but that seems to be
very specialized for the compiler tests. Open to suggestions on a better way
to handle these types of tests.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jwagenleitner/groovy groovy8067-mclq
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/groovy/pull/489.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #489
----
commit bb2464a919a3655f36707fa72fb30080c92a7288
Author: John Wagenleitner <[email protected]>
Date: 2017-02-05T06:13:26Z
GROOVY-8067: Possible deadlock when creating new ClassInfo entries in the
cache
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---