From cd4dbd69f81a2c744df10834799d50bc1430e50e Mon Sep 17 00:00:00 2001 From: XavM Date: Thu, 26 Mar 2015 12:09:27 +0100 Subject: [PATCH] Handle mix cluster with "couchbase" and "memcached" buckets --- dcp/cluster.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/dcp/cluster.py b/dcp/cluster.py index a525a58..6fe2500 100644 --- a/dcp/cluster.py +++ b/dcp/cluster.py @@ -42,18 +42,19 @@ def _get_buckets(self): buckets = dict() data = self._request('pools/default/buckets') for bucket in data: - name = bucket['name'] - buckets[name] = dict() - buckets[name]['password'] = bucket['saslPassword'] + if bucket['bucketType'] == "membase": + name = bucket['name'] + buckets[name] = dict() + buckets[name]['password'] = bucket['saslPassword'] - vbid = 0 - map = dict() - nodes = bucket['vBucketServerMap']['serverList'] - vbmap = bucket['vBucketServerMap']['vBucketMap'] - for vbucket in vbmap: - map[vbid] = nodes[vbucket[0]].encode('ascii') - vbid += 1 - buckets[name]['vbmap'] = map + vbid = 0 + map = dict() + nodes = bucket['vBucketServerMap']['serverList'] + vbmap = bucket['vBucketServerMap']['vBucketMap'] + for vbucket in vbmap: + map[vbid] = nodes[vbucket[0]].encode('ascii') + vbid += 1 + buckets[name]['vbmap'] = map self.buckets = buckets