未能通过Couchbase 4.1 API创建couchbase类型桶......出了什么问题?
问题描述:
我使用以下命令,创建针对couchbase 4.1 couchbase风格斗:未能通过Couchbase 4.1 API创建couchbase类型桶......出了什么问题?
$ curl -X POST -v -u admin:fakepwd \
-d 'name=mybucket' -d 'ramQuotaMB=256' -d 'bucketType=couchbase' \
-d 'replicaNumber=0' -d 'replicaIndex=0' -d 'proxyPort=0' \
-d 'authType=sasl' -d 'saslPassword=changeit' \
'http://localhost:8091/pools/default/buckets'
然而,当我查询斗,就像这样:
$ curl -u admin:fakepwd http://localhost:8091/pools/default/buckets/mybucket
{"name":"mybucket","bucketType":"membase","authType":"sasl","saslPassword":"fakepwd","proxyPort":0,"replicaIndex":false,...}
它告诉我这是一个Membase的桶。
我在做什么错?
答
您实际上已经成功创建了一个couchbase存储桶!
要理解为什么bucketType是membase
而不是couchbase
您必须先了解Couchbase作为公司的历史。
作为对Couchbase Inc wikipedia page解释的,Couchbase形成为的membase
和couchone
合并,保持大部分的遗留码从membase
天。
由于这个原因,Couchbase之前的版本有很多参考,因为它们深深嵌入当前代码库,包括couchbase
存储桶在内部仍被称为membase
存储桶。当在REST API中敲击适当的端点时,Memcached
存储桶将显示为memcached
存储桶。这些引用保留用于向后兼容的目的(特别是在升级的情况下),在更新它们方面几乎没有好处。
此传统命名的另一个主要示例是集群管理器进程ns_server
,它以公司Northscale(ns是northscale的简称)的另一个化身命名。