0

我在执行 lambda 函数时收到“完成请求之前退出进程”。

当我检查云手表中的日志时,它会显示错误信息

“无法对关闭的存储桶执行操作。” 或者有时它说

{ "errorMessage": "Client-Side timeout exceeded for operation. Inspect network conditions or increase the timeout", 
"errorType": "CouchbaseError", 
"stackTrace": [] 
}

我正在使用以下 npm 包与数据库服务器进行通信:couchbase、ottoman。

下面是exports.handler 函数:

exports.handler = function(event, context, callback) {
  function sendResponse(error, data) {
    ottoman.bucket.disconnect();
    console.log("error : ", error);
    console.log("data : ", data);
    callback(error, data);
  }
  console.log("17", event);
  if(event.id != undefined) {
    user.find({ _id: event.id }, function(error, result) { //this line generates the error
        if (error) {
            sendResponse(error, null);
        }
        console.log("22 : ", result);
    });
  }
});

下面是我的数据库连接文件:

var couchbase=require('couchbase');
var ottoman=require('ottoman');
var config = require("./config");

var myCluster = new couchbase.Cluster(config.couchbase.server);
module.exports.bucket = myCluster.openBucket(config.couchbase.bucket,function (error) {
  if(error) {
    console.log(error);
  }
  module.exports.bucket.operationTimeout=20000;
  module.exports.bucket.n1qlTimeout=100000;
  console.log("Successfully opened igt bucket");
  ottoman.bucket = module.exports.bucket; });

我们也有 user.find() 方法的替代函数,比如 user.getById() 但它给出了同样的错误。

什么可能导致这个问题。

4

0 回答 0