Skip to content

TINKERPOP-1467 Corrected a number of problems in close() operations for the driver [tp31]#441

Merged
asfgit merged 1 commit intotp31from
TINKERPOP-1467
Oct 4, 2016
Merged

TINKERPOP-1467 Corrected a number of problems in close() operations for the driver [tp31]#441
asfgit merged 1 commit intotp31from
TINKERPOP-1467

Conversation

@spmallette
Copy link
Copy Markdown
Contributor

https://issues.apache.org/jira/browse/TINKERPOP-1467

This was more of a commit than I wanted for tp31, but close() was really messed up. Fixed a number of race conditions and other logic that would allow the driver to hang on close. Also made it so that the Cluster makes an attempt to clean up any Client instances that it spawns.

Tested with mvn clean install and endlessly with mvn verify -pl gremlin-server -DskipIntegrationTests=false (basically ran it for a whole day over and over again).

VOTE +1

sessionlessThree.close();
cluster.close();

try {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is not verified, that exceptions are actually thrown. Should be more like:

try {
    sessionXyz.submit("1+1").all().get();
    assertTrue(false);
} catch (Exception ex) {
    ....

^^^^^^^^^^^^^^^^^^^^^^^

There were a few problems noted around the `close()` of `Cluster` and `Client` instances, including issues that
presented as system hangs. These issues have been resolved, however, it is worth nothing that an unchecked exception
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

worth nothing => worth noting

@dkuppitz
Copy link
Copy Markdown
Contributor

As said in a private chat, integration tests were stuck when I ran them first. However, the second attempt succeeded. More investigation is apparently needed, but for this PR:

VOTE: +1

This was more of a commit than I wanted for tp31, but close() was really messed up. Fixed a number of race conditions and other logic that would allow the driver to hang on close. Also made it so that the Cluster makes an attempt to clean up any Client instances that it spawns.
@spmallette
Copy link
Copy Markdown
Contributor Author

I ran the docker build multiple times today following the report of stuck integration tests. I never ran into the problem, but the adjustments I forced pushed prior to those tests hopefully fixed it.

@dkuppitz
Copy link
Copy Markdown
Contributor

FYI: 3x BUILD SUCCESS in a row.

My vote still holds true.

@okram
Copy link
Copy Markdown
Contributor

okram commented Oct 3, 2016

VOTE +1.

@asfgit asfgit merged commit 6d14adb into tp31 Oct 4, 2016
@asfgit asfgit deleted the TINKERPOP-1467 branch November 1, 2016 12:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants