GitHub user spmallette opened a pull request:
https://github.com/apache/incubator-tinkerpop/pull/322
TINKERPOP-1196 Fix for Result.one() which could have blocked indefinitely.
https://issues.apache.org/jira/browse/TINKERPOP-1196
Result.one() sometimes would hang under rare but possible conditions. This
change should prevent that from happening now as it removes the chance of
await() futures from being created while a flush of existing waiting futures is
occurring. When that happened it seemed to create the possibility where an
await() future could get created but never been completed.
I would have CTR'd this as it is a small change but I was hoping for
reviewers to do:
```text
mvn clean install && mvn verify -pl gremlin-server
-DskipIntegrationTests=false
```
so as to validate that the problem is resolved on their systems. This
problem didn't typically occur on mine - @okram this seemed to happen a lot to
you during test runs so it would be great if you could give it a try.
VOTE +1
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/apache/incubator-tinkerpop TINKERPOP-1196
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-tinkerpop/pull/322.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 #322
----
commit 3f8577596dee49493a75b039bf16e2e3f8e92793
Author: Stephen Mallette <[email protected]>
Date: 2016-05-27T14:23:54Z
Fixed for Result.one() which could have blocked indefinitely.
Result.one() sometimes would hang under rare but possible conditions. This
change should prevent that from happening now as it removes the chance of
await() futures from being created while a flush of existing waiting futures is
occurring. When that happened it seemed to create the possibility where an
await() future could get created but never been completed.
----
---
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.
---