Couchbase多服务器安装问题

时间:2016-07-19 10:20:03

标签: node.js amazon-web-services amazon-ec2 couchbase

我们的couchbase服务器设置有三个EC2实例,第一个实例只运行数据库服务,第二个实例运行索引服务&第三个实例运行查询服务。

指数&查询服务器使用couchbase Web控制台添加到数据服务器,该控制台可以选择“添加服务器”#34;在"服务器节点"从this文章引用的选项。

现在,例如,如果我必须使用Nodejs SDK,Ottoman连接到驻留在服务器上的存储桶并创建一个新用户,那么它就可以连接到存储桶但是它无法将文档保存在斗并给我一个"分段错误(核心转储)"错误。

如果我们需要对服务器的设置方式进行任何更改,或者我们应该如何继续上面的示例,请告知我们,以便我们能够创建用户。

软件版本: Couchbase:4.5 Couchbase Nodejs SDK:2.2 奥斯曼:1.0.3

此功能使用Nodejs ver-4.3从AWS Lambda运行。

我得到的错误是"分段错误(核心转储)"。

以下是我尝试过的AWS Lambda函数:

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

var myCluster = new couchbase.Cluster(config.couchbase.server); // here tried connecting to either data / index / query server
ottoman.bucket = myCluster.openBucket(config.couchbase.bucket);

require('./models/users');

ottoman.ensureIndices(function(err) {
if (err) {
console.log('failed to created neccessary indices', err);
return;
}

console.log('ottoman indices are ready for use!');
});

var user = require('./models/users');

exports.handler = function(event, context) {
user.computeHash(event.password, function(err, salt, hash) {
if (err) {
context.fail('Error in hash: ' + err);
} else {
user.createAndSave("userDetails details sent to the user creation function", function (error, done) {

            if (error) {
                context.fail(error.toString());
            }

            context.succeed({
                success: true,
                data: done
            });
        });
    }
});
};

当你在本地运行上述函数(使用node-lambda)进行测试时,会给出相同的"分段错误(核心转储)"错误,当上传到Lambda并进行测试时,会出现以下错误:

{
"errorMessage": "Process exited before completing request"
}

提前致谢

1 个答案:

答案 0 :(得分:2)

这是与您正在使用的MDS方案相关的已知问题(https://issues.couchbase.com/browse/JSCBC-316)。这将在我们8月初的下一个版本中得到解决。