RequestCanceledError при попытке подключения
В настоящее время я переношу один из наших сервисов со старой версии NodeJS SDK (2.6.12) на самую последнюю версию (4.2.7).
Для тестирования я запускаю локальный кластер Couchbase с помощью Docker. Версия — Enterprise Edition 7.1.3, сборка 3479.
Когда я пытаюсь подключиться к кластеру, используя наш устаревший код (и старую версию SDK), это работает. Когда я пытаюсь подключиться с помощью нового SDK, я получаю следующую ошибку:
[RequestCanceledError: request canceled] {
cause: [Error: request_canceled (2)] { code: 2 },
context: undefined
}
Это новый код (ведро и имя пользователя одинаковые), который выдает ошибку в cb.connect(...):
const uri = "couchbase://localhost:8091"
const bucket = "test";
const pw = "password"
const timeoutOperation = 2;
async function run() {
const cluster = await cb.connect(uri, {
"username": bucket,
"password": pw,
"timeouts": {
"kvTimeout": timeoutOperation * 1000
}
});
const openBucket = cluster.bucket(bucket);
const connection = openBucket.defaultCollection();
}
run();
Это наш устаревший код, в котором используется старая версия NodeJS SDK. Он отлично работает:
async function connectToBucketOld(){
const cluster = new cbOld.Cluster(uri);
const connection: cbOld.Bucket = await new Promise((resolve, reject) => {
let connection;
const cb = err => (err ? reject(err) : resolve(connection));
connection = cluster.openBucket(bucket, pw, cb);
});
connection.operationTimeout = 1000 * timeoutOperation;
return { connection };
}