You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "Stephen Mallette (Jira)" <ji...@apache.org> on 2020/09/03 18:40:00 UTC
[jira] [Commented] (TINKERPOP-2409) js: DriverRemoteConnection
never times out if server uri not available.
[ https://issues.apache.org/jira/browse/TINKERPOP-2409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17190352#comment-17190352 ]
Stephen Mallette commented on TINKERPOP-2409:
---------------------------------------------
I don't seem to be able to get a hanging situation on 3.4.8. By "no connection" i assume i could recreate that by just not having Gremlin Server running. Is that right? That said, when I do that I don't get an error or anything...it just sorta "does nothing". I'm not always smart about javascript, but this was my test:
{code}
describe('Faulty Traversal', function () {
describe("No Server Available", function () {
it('should not hang', function() {
const authenticator = new PlainTextSaslAuthenticator('no', 'matter');
const g = traversal().withRemote(new DriverRemoteConnection('ws://localhost:9998/gremlin', {authenticator}));
g.V().toList().then(function (list) {
assert.ok(list);
assert.strictEqual(list.length, 0);
}).catch(function(err) {
assert.fail();
});
});
});
});
{code}
It just passes without error - sorta expected the {{catch()}} to do something, but i might not be doing something right. [~jorgebg] any thoughts on this one?
> js: DriverRemoteConnection never times out if server uri not available.
> -----------------------------------------------------------------------
>
> Key: TINKERPOP-2409
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2409
> Project: TinkerPop
> Issue Type: Bug
> Components: javascript
> Affects Versions: 3.4.8
> Reporter: Philip
> Priority: Major
>
> constructor...
> const authenticator = new PlainTextSaslAuthenticator(userName,dbData.password)
> this.dc = new DriverRemoteConnection(connectionStrArray.join(''), \{ authenticator })
> this.graph = new Graph()
>
> function code...
> const g = this.graph.traversal().withRemote(this.dc)
> let count = await g.V().count().next()
> console.log(count)
>
> This works great with a connection but with no connection it failed with a crash error in 3.3.8 - not ideal but was manageable as code is always run as a dynamic object per. In 3.4.8 when there is no connection it never resolves or times out so it just hangs.
> I haven't found a work around as yet
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)