Description
By accident I stumbled across the fact that the terse bucket config contains the "projector" port twice:
{
|
"rev":3496,
|
"name":"my-bucket",
|
"uri":"/pools/default/buckets/my-bucket?bucket_uuid=1cf18cac603acb77852a41e995cf301a",
|
"streamingUri":"/pools/default/bucketsStreaming/my-bucket?bucket_uuid=1cf18cac603acb77852a41e995cf301a",
|
"nodes":[
|
{
|
"couchApiBase":"http://$HOST:8092/my-bucket%2B1cf18cac603acb77852a41e995cf301a",
|
"hostname":"$HOST:8091",
|
"ports":{
|
"direct":11210
|
}
|
}
|
],
|
"nodesExt":[
|
{
|
"services":{
|
"mgmt":8091,
|
"mgmtSSL":18091,
|
"cbas":8095,
|
"cbasSSL":18095,
|
"eventingAdminPort":8096,
|
"eventingDebug":9140,
|
"eventingSSL":18096,
|
"fts":8094,
|
"ftsSSL":18094,
|
"ftsGRPC":9130,
|
"ftsGRPCSSL":19130,
|
"indexAdmin":9100,
|
"indexScan":9101,
|
"indexHttp":9102,
|
"indexStreamInit":9103,
|
"indexStreamCatchup":9104,
|
"indexStreamMaint":9105,
|
"indexHttps":19102,
|
"kv":11210,
|
"kvSSL":11207,
|
"capi":8092,
|
"capiSSL":18092,
|
"projector":9999,
|
"projector":9999,
|
"n1ql":8093,
|
"n1qlSSL":18093
|
},
|
"thisNode":true
|
}
|
],
|
"nodeLocator":"vbucket",
|
"uuid":"1cf18cac603acb77852a41e995cf301a",
|
"ddocs":{
|
"uri":"/pools/default/buckets/my-bucket/ddocs"
|
},
|
"vBucketServerMap":{
|
"hashAlgorithm":"CRC",
|
"numReplicas":1,
|
"serverList":[
|
"$HOST:11210"
|
],
|
"vBucketMap":[
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
],
|
[
|
0,
|
-1
|
]
|
]
|
},
|
"bucketCapabilitiesVer":"",
|
"bucketCapabilities":[
|
"durableWrite",
|
"tombstonedUserXAttrs",
|
"couchapi",
|
"dcp",
|
"cbhello",
|
"touch",
|
"cccp",
|
"xdcrCheckpointing",
|
"nodesExt",
|
"xattr"
|
],
|
"clusterCapabilitiesVer":[
|
1,
|
0
|
],
|
"clusterCapabilities":{
|
"n1ql":[
|
"enhancedPreparedStatements"
|
]
|
}
|
}
|
With my limited knowledge of the ns_server codebase I assume it is because it is assigned twice here to the same key (as opposed to using the SSL postfix like the others): https://github.com/couchbase/ns_server/blob/master/src/service_ports.erl#L71
The SDKs are not affected because we do not look at that projector port at all, but it still looks odd since the resulting JSON has the same key twice.