使用couchbase / ottoman node-js sdk

时间:2016-09-01 14:18:02

标签: node.js couchbase aws-lambda couchbase-ottoman ottoman-node

我得到"在完成请求之前退出流程"执行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(),但它也会出现相同的错误。

可能导致此问题的原因。

0 个答案:

没有答案