3 #ifndef ZOOKEEPER_INCLUDE_ZK_DN_CLIENT_H_
4 #define ZOOKEEPER_INCLUDE_ZK_DN_CLIENT_H_
6 #include "zk_client_common.h"
7 #include <google/protobuf/message.h>
57 const std::string &zkIpAndAddress,
58 uint64_t total_disk_space,
59 const uint32_t ipcPort = 50020,
60 const uint32_t xferPort = 50010);
63 std::shared_ptr<ZKWrapper>,
64 uint64_t total_disk_space,
65 const uint32_t ipcPort = 50020,
66 const uint32_t xferPort = 50010);
73 uint64_t total_disk_space,
74 const uint32_t ipcPort,
75 const uint32_t xferPort);
86 bool blockSizeUpdated(uint64_t uuid, uint64_t size_bytes);
88 bool sendStats(uint64_t free_space, uint32_t xmits);
103 bool poll_replication_queue();
105 bool poll_delete_queue();
112 std::string get_datanode_id();
115 std::shared_ptr<TransferServer> server;
124 void processDeleteQueue();
126 std::string build_datanode_id(
DataNodeId data_node_id);
131 static const std::string CLASS_NAME;
139 void initWorkQueue(std::string queueName,
void (*watchFuncPtr)(zhandle_t *,
148 void handleReplicateCmds(
const std::string &path);
153 bool handleReconstructCmds(
const std::string &path);
155 static void thisDNDeleteQueueWatcher(zhandle_t *zzh,
164 bool find_datanode_with_block(uint64_t &block_uuid,
165 std::string &datanode,
172 const std::uint64_t &block_id,
173 const uint64_t &block_size);
177 #endif // ZOOKEEPER_INCLUDE_ZK_DN_CLIENT_H_
bool push_dn_on_repq(std::string dn_name, uint64_t blockid)
Definition: zk_dn_client.cc:298
Definition: zk_client_common.h:14
bool blockReceived(uint64_t uuid, uint64_t size_bytes)
Definition: zk_dn_client.cc:40
Definition: data_transfer_server.h:43
Definition: zk_dn_client.h:30
Definition: hdfs.pb.h:314
Definition: zk_dn_client.h:46
Definition: zk_dn_client.h:38
Definition: zk_dn_client.h:22
Definition: zk_dn_client.h:16
bool poll_reconstruct_queue()
Definition: zk_dn_client.cc:335
void registerDataNode(const std::string &ip, uint64_t total_disk_space, const uint32_t ipcPort, const uint32_t xferPort)
Definition: zk_dn_client.cc:204
void setTransferServer(std::shared_ptr< TransferServer > &server)
Definition: zk_dn_client.cc:319
ZkClientDn(const std::string &ip, const std::string &zkIpAndAddress, uint64_t total_disk_space, const uint32_t ipcPort=50020, const uint32_t xferPort=50010)
Definition: zk_dn_client.cc:32