Выполнение запроса на закрытом клиенте gremlin приводит к завершению процесса Node - PullRequest
0 голосов
/ 19 марта 2020

У меня есть javascript клиент gremlin, который закрывается и заметил какое-то странное поведение. Я ожидал бы, что это вызовет исключение, но вместо этого он полностью завершает процесс узла:

async function run() {
  ... get client

  // Perform a query
  const result1 = await gremlinClient.submit(`g.V("id")`);
  console.log(result1);

  // Close connection
  console.log("closing!");
  gremlinClient.close();

  // Perform a query again
  console.log("Running second query");
  const result2 = await gremlinClient.submit(`g.V("id")`);
  console.log("Finished second query");
  console.log(result2);
}

try {
  run()
    .then(() => {
      console.log("Done");
    })
    .catch(err => {
      console.log("error promise");
      console.error(err);
    });
} catch (err) {
  console.log("error");
  console.error(err);
}

Я ожидаю, что результат будет примерно таким:

[ ...result ]
closing!
Running second query
error promise
...error

Но это фактически получает второй запрос, затем просто останавливается и выходит:

[ ...result ]
closing!
Running second query
...