[
https://issues.apache.org/jira/browse/TINKERPOP-2205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16851970#comment-16851970
]
stephen mallette commented on TINKERPOP-2205:
---------------------------------------------
Given TINKERPOP-2132 seems to be solved by this body of work, I think this PR
should include the tests I had in my branch (unless they duplicate tests
already in this PR):
https://github.com/apache/tinkerpop/commit/329979e4c609b42866f1af80eb02860f195093c5#diff-2eb4fd75aa20b9b615aa8c20f5b54aa7
As for the rest of the changes in that commit, I'm not sure if we need to
change the protocol anymore so perhaps we can just close TINKERPOP-2132 when
this issue merges?
> Use one connection per request for Java client
> ----------------------------------------------
>
> Key: TINKERPOP-2205
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2205
> Project: TinkerPop
> Issue Type: Improvement
> Components: driver
> Affects Versions: 3.3.6
> Reporter: Divij Vaidya
> Priority: Major
>
> This issue is a tracking item for the conversation in the mailing list
> [[1]|https://lists.apache.org/thread.html/77728cb77d4eab90f15680595e653ffc6055b74db29cbd4dcd5f0339@%3Cdev.tinkerpop.apache.org%3E]
> which highlights multiple problems and shortcomings in the existing Java
> client and proposes a design change in the client connection pooling to
> address the same. More specifically, the problems addressed are as follows:
> # Difficulty in configuring the client for optimum performance.
> # Undocumented dependency of configuration parameters on each other.
> # A bad request can impact other requests on the same channel.
> # Host is marked as dead even if it is busy serving requests.
> # No way to free up server resources if the client has stopped consuming
> results.
> # No differentiation between retriable and non-retriable exceptions from the
> application code.
> # Keep alive is only sent when a query is executing, which means that a
> connection open for a very long time with no query being sent will be closed
> by the server.
> # Race condition if the server response reaches before result queue has been
> registered.
> # Unpredictable behaviour if the server sends an exception followed by a
> genuine response for the same request.
> # A concurrent hash map (tracking pending requests) is a point of contention
> amongst threads.
> [1]https://lists.apache.org/thread.html/77728cb77d4eab90f15680595e653ffc6055b74db29cbd4dcd5f0339@%3Cdev.tinkerpop.apache.org%3E
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)