def main(): handler = MyHandler() client = DcpClient() client.connect('172.23.105.195', 8091, 'bucket-1', 'Administrator', 'password', handler) for i in range(8): result = client.add_stream(i, 0, 0, 10, 0, 0, 0) if result['status'] != 0: print 'Stream request to vb %d failed dur to error %d' %\ (i, result['status']) while handler.has_active_streams(): time.sleep(.25) print handler.get_num_items() client.close()
def run(self, sid, lock): self.sid = sid host, port = self.ts.node.split(':') try: self.handler = DcpHandler() self.dcp_client = DcpClient() self.dcp_client.connect(host, int(port), self.ts.bucket, 'Administrator', 'password', self.handler) except: logger.info('Connection Error: dcp-worker-{}'.format(self.sid)) return logger.info('Started: query-worker-{}'.format(self.sid)) for vb in range(1024): start_seqno = 0 end_seqno = 18446744073709551615 # 2^64 - 1 result = self.dcp_client.add_stream(vb, 0, start_seqno, end_seqno, 0, 0, 0) if result['status'] != 0: logger.warn('Stream failed for vb {} due to error {}' .format(vb, result['status'])) no_items = 0 last_item_count = 0 while no_items < 10: time.sleep(1) cur_items = self.handler.get_num_items() if cur_items == last_item_count: no_items += 1 else: no_items = 0 last_item_count = cur_items self.dcp_client.close() logger.info('Finished: dcp-worker-{}, read {} items' .format(self.sid, last_item_count))