Javascript 使用node.js启用Couchbase N1QL引擎

Javascript 使用node.js启用Couchbase N1QL引擎,javascript,node.js,couchbase,n1ql,nosql,Javascript,Node.js,Couchbase,N1ql,Nosql,我正在尝试使用couchbasenpm包运行一些N1QL查询。以下是我在运行代码之前采取的步骤: 在OSX上安装并执行Couchbase 导航到:8091并设置 将凭证以及啤酒样品桶 已将N1QL DP4下载到文件夹中 已启用cbq引擎如下: /cbq引擎-数据存储=http://localhost:8091 创建一个 此时,我的localhost:8091(主Couchbase集群)和localhost:8093(DP4引擎)都处于活动状态 下面是我在node.js客户端尝试运行简单N1QL查

我正在尝试使用
couchbase
npm包运行一些N1QL查询。以下是我在运行代码之前采取的步骤:

  • 在OSX上安装并执行Couchbase
  • 导航到:8091并设置 将凭证以及
    啤酒样品
  • 已将N1QL DP4下载到文件夹中
  • 已启用
    cbq引擎
    如下:
    /cbq引擎-数据存储=http://localhost:8091
  • 创建一个
  • 此时,我的
    localhost:8091
    (主Couchbase集群)和
    localhost:8093
    (DP4引擎)都处于活动状态

    下面是我在node.js客户端尝试运行简单N1QL查询时使用的代码:

    var colors = require('colors'); // for console.log
    var couchbase = require('couchbase');
    var N1qlQuery = require('couchbase').N1qlQuery; // get query object
    var myCluster = new couchbase.Cluster('couchbase://localhost:8091'); // connect to live local cluster
    var myBucket = myCluster.openBucket(); // open bucket
    myBucket.enableN1ql(['http://localhost:8093/']); // enable n1ql as per documentation (http://docs.couchbase.com/developer/node-2.0/n1ql-queries.html) - I also tried :8091, same result
    var query = N1qlQuery.fromString('SELECT * FROM `beer-sample` LIMIT 10');
    
    setTimeout(function() {
      myBucket.query(query, function(err, res) {
        if (err) {
          console.log('query failed'.red, err);
          return;
        }
        console.log('success!', res);
      });
    }, 2000); // just in case connecting takes a second or something?
    
    结果如下:

    查询失败{[错误:无法连接到存储桶]代码:24}

    我尝试了所有方法,但找不到任何文档来解决这个问题。发生什么事了

    编辑:显然
    LCB_LOGLEVEL
    环境变量将允许底层C库输出一些日志。这是:

    LCB_LOGLEVEL=5 node web.js
    0ms [I0] {1299} [INFO] (instance - L:372) Version=2.4.0, Changeset=0ac7fc4
    0ms [I0] {1299} [INFO] (instance - L:373) Effective connection string: couchbase://127.0.0.1/beer-sample. Bucket=beer-sample
    0ms [I0] {1299} [DEBUG] (instance - L:63) Adding host 127.0.0.1:8091 to initial HTTP bootstrap list
    0ms [I0] {1299} [DEBUG] (instance - L:63) Adding host 127.0.0.1:11210 to initial CCCP bootstrap list
                 Starting...            
    107ms [I1] {1299} [INFO] (instance - L:372) Version=2.4.0, Changeset=0ac7fc4
    107ms [I1] {1299} [INFO] (instance - L:373) Effective connection string: couchbase://localhost:8091/default. Bucket=default
    107ms [I1] {1299} [DEBUG] (instance - L:63) Adding host localhost:8091 to initial CCCP bootstrap list
    107ms [I1] {1299} [DEBUG] (confmon - L:89) Preparing providers (this may be called multiple times)
    108ms [I1] {1299} [DEBUG] (confmon - L:99) Provider FILE is DISABLED
    108ms [I1] {1299} [DEBUG] (confmon - L:96) Provider CCCP is ENABLED
    108ms [I1] {1299} [DEBUG] (confmon - L:96) Provider HTTP is ENABLED
    108ms [I1] {1299} [DEBUG] (confmon - L:99) Provider MCRAW is DISABLED
    108ms [I1] {1299} [TRACE] (confmon - L:292) Start refresh requested
    108ms [I1] {1299} [TRACE] (confmon - L:271) Current provider is CCCP
    108ms [I1] {1299} [INFO] (cccp - L:118) Requesting connection to node localhost:8091 for CCCP configuration
    108ms [I1] {1299} [DEBUG] (lcbio_mgr - L:416) <localhost:8091> (HE=0x103803800) Creating new connection because none are available in the pool
    108ms [I1] {1299} [DEBUG] (lcbio_mgr - L:321) <localhost:8091> (HE=0x103803800) Starting connection on I=0x10311dc70
    108ms [I1] {1299} [INFO] (connection - L:441) <localhost:8091> (SOCK=0x10311da10) Starting. Timeout=2000000us
    110ms [I0] {1299} [DEBUG] (confmon - L:89) Preparing providers (this may be called multiple times)
    110ms [I0] {1299} [DEBUG] (confmon - L:99) Provider FILE is DISABLED
    110ms [I0] {1299} [DEBUG] (confmon - L:96) Provider CCCP is ENABLED
    110ms [I0] {1299} [DEBUG] (confmon - L:96) Provider HTTP is ENABLED
    110ms [I0] {1299} [DEBUG] (confmon - L:99) Provider MCRAW is DISABLED
    110ms [I0] {1299} [TRACE] (confmon - L:292) Start refresh requested
    110ms [I1] {1299} [TRACE] (connection - L:335) <localhost:8091> (SOCK=0x10311da10) Received completion handler. Status=0. errno=0
    110ms [I1] {1299} [INFO] (connection - L:116) <localhost:8091> (SOCK=0x10311da10) Connected 
    110ms [I1] {1299} [DEBUG] (lcbio_mgr - L:271) <localhost:8091> (HE=0x103803800) Received result for I=0x10311dc70,C=0x10311da10; E=0x0
    110ms [I1] {1299} [DEBUG] (lcbio_mgr - L:223) <localhost:8091> (HE=0x103803800) Assigning R=0x10311da50 SOCKET=0x10311da10
    110ms [I1] {1299} [DEBUG] (ioctx - L:101) <localhost:8091> (CTX=0x100f012c0,unknown) Pairing with SOCK=0x10311da10
    110ms [I0] {1299} [TRACE] (confmon - L:271) Current provider is CCCP
    110ms [I0] {1299} [INFO] (cccp - L:118) Requesting connection to node 127.0.0.1:11210 for CCCP configuration
    110ms [I0] {1299} [DEBUG] (lcbio_mgr - L:416) <127.0.0.1:11210> (HE=0x10280e600) Creating new connection because none are available in the pool
    110ms [I0] {1299} [DEBUG] (lcbio_mgr - L:321) <127.0.0.1:11210> (HE=0x10280e600) Starting connection on I=0x100f01760
    110ms [I0] {1299} [INFO] (connection - L:441) <127.0.0.1:11210> (SOCK=0x100f01890) Starting. Timeout=2000000us
    110ms [I0] {1299} [TRACE] (connection - L:335) <127.0.0.1:11210> (SOCK=0x100f01890) Received completion handler. Status=0. errno=0
    110ms [I0] {1299} [INFO] (connection - L:116) <127.0.0.1:11210> (SOCK=0x100f01890) Connected 
    110ms [I0] {1299} [DEBUG] (lcbio_mgr - L:271) <127.0.0.1:11210> (HE=0x10280e600) Received result for I=0x100f01760,C=0x100f01890; E=0x0
    110ms [I0] {1299} [DEBUG] (lcbio_mgr - L:223) <127.0.0.1:11210> (HE=0x10280e600) Assigning R=0x100f01540 SOCKET=0x100f01890
    110ms [I0] {1299} [DEBUG] (ioctx - L:101) <127.0.0.1:11210> (CTX=0x100d00ca0,unknown) Pairing with SOCK=0x100f01890
    110ms [I0] {1299} [DEBUG] (ioctx - L:151) <127.0.0.1:11210> (CTX=0x100d00ca0,sasl) Destroying. PND=0,ENT=1,SORC=1
    110ms [I0] {1299} [DEBUG] (ioctx - L:101) <127.0.0.1:11210> (CTX=0x10311dda0,unknown) Pairing with SOCK=0x100f01890
    110ms [I0] {1299} [DEBUG] (ioctx - L:151) <127.0.0.1:11210> (CTX=0x10311dda0,bc_cccp) Destroying. PND=0,ENT=1,SORC=1
    110ms [I0] {1299} [INFO] (lcbio_mgr - L:491) <127.0.0.1:11210> (HE=0x10280e600) Placing socket back into the pool. I=0x100f01760,C=0x100f01890
    111ms [I0] {1299} [INFO] (confmon - L:174) Setting new configuration. Received via CCCP
    111ms [I0] {1299} [DEBUG] (bootstrap - L:55) Instance configured!
    2112ms [I1] {1299} [ERROR] (negotiation - L:178) <localhost:8091> (SASLREQ=0x100f01180) Error: 0x17, Negotiation timed out
    2112ms [I1] {1299} [ERROR] (cccp - L:133) <NOHOST:NOPORT> Got I/O Error=0x17
    2112ms [I1] {1299} [INFO] (confmon - L:202) Provider 'CCCP' failed
    2112ms [I1] {1299} [DEBUG] (confmon - L:236) Will try next provider in 0us
    2112ms [I1] {1299} [DEBUG] (ioctx - L:151) <localhost:8091> (CTX=0x100f012c0,sasl) Destroying. PND=1,ENT=0,SORC=1
    2112ms [I1] {1299} [TRACE] (confmon - L:271) Current provider is HTTP
    2112ms [I1] {1299} [TRACE] (htconfig - L:395) Starting HTTP Configuration Provider 0x103875a00
    2112ms [I1] {1299} [ERROR] (htconfig - L:400) Not scheduling HTTP provider since no nodes have been configured for HTTP bootstrap
    2112ms [I1] {1299} [INFO] (confmon - L:202) Provider 'HTTP' failed
    2112ms [I1] {1299} [TRACE] (confmon - L:226) Maximum provider reached. Resetting index
    2112ms [I1] {1299} [ERROR] (bootstrap - L:100) Failed to bootstrap client=0x10311bb00. Code=0xa, Message=No more bootstrap providers remain
    query failed { [Error: failed to connect to bucket] code: 24 }
    10112ms [I0] {1299} [DEBUG] (lcbio_mgr - L:464) <127.0.0.1:11210> (HE=0x10280e600) Idle connection expired
    
    LCB_LOGLEVEL=5节点web.js
    0ms[I0]{1299}[INFO](实例-L:372)版本=2.4.0,变更集=0ac7fc4
    0ms[I0]{1299}[INFO](实例-L:373)有效连接字符串:couchbase://127.0.0.1/beer-sample. 桶=啤酒样品
    0ms[I0]{1299}[DEBUG](实例-L:63)将主机127.0.0.1:8091添加到初始HTTP引导列表
    0ms[I0]{1299}[DEBUG](实例-L:63)将主机127.0.0.1:11210添加到初始CCCP引导列表
    启动。。。
    107ms[I1]{1299}[INFO](实例-L:372)版本=2.4.0,变更集=0ac7fc4
    107ms[I1]{1299}[INFO](实例-L:373)有效连接字符串:couchbase://localhost:8091/default. Bucket=默认值
    107ms[I1]{1299}[DEBUG](实例-L:63)将主机localhost:8091添加到初始CCCP引导列表
    107ms[I1]{1299}[DEBUG](confmon-L:89)正在准备提供程序(这可能会被多次调用)
    108ms[I1]{1299}[DEBUG](confmon-L:99)提供程序文件已禁用
    已启用108ms[I1]{1299}[DEBUG](confmon-L:96)提供程序CCCP
    已启用108ms[I1]{1299}[DEBUG](confmon-L:96)提供程序HTTP
    已禁用108ms[I1]{1299}[DEBUG](confmon-L:99)提供程序MCRAW
    请求108ms[I1]{1299}[TRACE](confmon-L:292)启动刷新
    108ms[I1]{1299}[TRACE](confmon-L:271)当前提供程序是CCCP
    108ms[I1]{1299}[INFO](cccp-L:118)请求连接到节点localhost:8091以进行cccp配置
    108ms[I1]{1299}[DEBUG](lcbio_mgr-L:416)(HE=0x103803800)正在创建新连接,因为池中没有可用的连接
    108ms[I1]{1299}[DEBUG](lcbio_mgr-L:321)(HE=0x103803800)在I=0x10311dc70上启动连接
    108ms[I1]{1299}[INFO](连接-L:441)(SOCK=0x10311da10)正在启动。超时=2000000 US
    110ms[I0]{1299}[DEBUG](confmon-L:89)正在准备提供程序(可以多次调用)
    110ms[I0]{1299}[DEBUG](confmon-L:99)提供程序文件已禁用
    110ms[I0]{1299}[DEBUG](confmon-L:96)提供程序CCCP已启用
    已启用110ms[I0]{1299}[DEBUG](confmon-L:96)提供程序HTTP
    110ms[I0]{1299}[DEBUG](confmon-L:99)提供程序MCRAW已禁用
    请求110ms[I0]{1299}[TRACE](confmon-L:292)启动刷新
    110ms[I1]{1299}[TRACE](连接-L:335)(SOCK=0x10311da10)接收到完成处理程序。状态=0。errno=0
    110ms[I1]{1299}[INFO](连接-L:116)(SOCK=0x10311da10)已连接
    110ms[I1]{1299}[DEBUG](lcbio_mgr-L:271)(HE=0x103803800)接收到I=0x10311dc70,C=0x10311da10的结果;E=0x0
    110ms[I1]{1299}[DEBUG](lcbio_mgr-L:223)(HE=0x103803800)分配R=0x10311da50套接字=0x10311da10
    110ms[I1]{1299}[DEBUG](ioctx-L:101)(CTX=0x100f012c0,未知)与SOCK=0x10311da10配对
    110ms[I0]{1299}[TRACE](confmon-L:271)当前提供程序是CCCP
    110ms[I0]{1299}[INFO](cccp-L:118)请求连接到节点127.0.0.1:11210以进行cccp配置
    110ms[I0]{1299}[DEBUG](lcbio_mgr-L:416)(HE=0x10280e600)正在创建新连接,因为池中没有可用的连接
    110ms[I0]{1299}[DEBUG](lcbio_mgr-L:321)(HE=0x10280e600)在I=0x100f01760上启动连接
    110ms[I0]{1299}[INFO](连接-L:441)(SOCK=0x100f01890)正在启动。超时=2000000 US
    110ms[I0]{1299}[TRACE](连接-L:335)(SOCK=0x100f01890)接收到完成处理程序。状态=0。errno=0
    110ms[I0]{1299}[INFO](连接-L:116)(SOCK=0x100f01890)已连接
    110ms[I0]{1299}[DEBUG](lcbio_mgr-L:271)(HE=0x10280e600)接收到I=0x100f01760,C=0x100f01890的结果;E=0x0
    110ms[I0]{1299}[DEBUG](lcbio_mgr-L:223)(HE=0x10280e600)分配R=0x100f01540套接字=0x100f01890
    110ms[I0]{1299}[DEBUG](ioctx-L:101)(CTX=0x100d00ca0,未知)与SOCK=0x100f01890配对
    110ms[I0]{1299}[DEBUG](ioctx-L:151)(CTX=0x100d00ca0,sasl)正在销毁。PND=0,ENT=1,SORC=1
    110ms[I0]{1299}[DEBUG](ioctx-L:101)(CTX=0x10311dda0,未知)与SOCK=0x100f01890配对
    110ms[I0]{1299}[DEBUG](ioctx-L:151)(CTX=0x10311dda0,bc_cccp)正在销毁。PND=0,ENT=1,SORC=1
    110ms[I0]{1299}[INFO](lcbio_mgr-L:491)(HE=0x10280e600)将套接字放回池中。I=0x100f01760,C=0x100f01890
    111ms[I0]{1299}[INFO](confmon-L:174)正在设置新配置。通过CCCP接收
    111ms[I0]{1299}[DEBUG](bootstrap-L:55)实例已配置!
    2112ms[I1]{1299}[ERROR](协商-L:178)(SASLREQ=0x100f01180)错误:0x17,协商超时
    2112ms[I1]{1299}[ERROR](cccp-L:133)获取I/O错误=0x17
    2112ms[I1]{1299}[INFO](confmon-L:202)提供程序“CCCP”失败
    2112ms[I1]{1299}[DEBUG](confmon-L:236)将在0us中尝试下一个提供程序
    2112ms[I1]{1299}[DEBUG](ioctx-L:151)(CTX=0x100f012c0,sasl)正在销毁。PND=1,ENT=0,SORC=1
    2112ms[I1]{1299}[TRACE](confmon-L:271)当前提供程序是HTTP
    2112ms[I1]{1299}[TRACE](htconfig-L:395)正在启动HTTP配置提供程序0x103875a00
    2112ms[I1]{1299}[ERROR](htconfig-L:400)未调度HTTP p
    
    myBucket.enableN1ql(['http://1.1.1.1:8093/'])
    
    myBucket.enableN1ql(['1.1.1.1:8093'])