[ 
https://issues.apache.org/jira/browse/TINKERPOP-3061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17827491#comment-17827491
 ] 

Florian Hockmann commented on TINKERPOP-3061:
---------------------------------------------

bq. for gremlin-server. Which I think maybe a better place for this kind of fix?

If we can solve this in the server somehow than that would be better of course. 
But I'm not sure whether that's possible without requiring bigger changes to 
the protocol itself.
The change for the driver is to simply submit a request on each connection 
before users get the connection. This initial request will then trigger the 
authentication mechanism. Afterwards users can directly submit multiple 
requests in parallel over the connection as authentication already happened.

> Concurrent queries will break authentication on javascript driver
> -----------------------------------------------------------------
>
>                 Key: TINKERPOP-3061
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-3061
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: javascript
>    Affects Versions: 3.6.6, 3.7.1
>            Reporter: Yang Xia
>            Priority: Major
>
> Reported by tien on Discord:
> {code:java}
> import gremlin from "gremlin";
> const g = gremlin.process.AnonymousTraversalSource.traversal().withRemote(
>   new gremlin.driver.DriverRemoteConnection("ws://localhost:8182/gremlin", {
>     authenticator: new gremlin.driver.auth.PlainTextSaslAuthenticator(
>       "admin",
>       "administrator"
>     ),
>   })
> );
> // This will throws: Failed to authenticate (401)
> await Promise.all([g.V().toList(), g.V().toList()]);
> // This works as expected
> await g.V().toList();
> await g.V().toList(); {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to