def register(meta_ip, meta_port, data_ip, data_port): """Creates a connection with the metadata server and register as data node """ # Establish connectionDUP{"servers": [["localhost", 5050]]} sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) add = (meta_ip, meta_port) sock.connect(add) # Fill code print("HERE") try: response = "NAK" sp = Packet() while response == "NAK": sp.BuildRegPacket(data_ip, data_port) sock.sendall(sp.getEncodedPacket()) response = sock.recv(1024) print(response) if response == "ACK": print "Successfully Registered" # handle(response) if response == "DUP": print "Duplicate Registration" if response == "NAK": print "Registration ERROR" sys.exit(0) finally: sock.close()
def register(meta_ip, meta_port, data_ip, data_port): """ Creates a connection with the metadata server and registers as data node """ # Establish connection sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect((meta_ip, meta_port)) # Attempt registration try: sp = Packet() sp.BuildRegPacket(data_ip, data_port) sock.send(sp.getEncodedPacket()) response = sock.recv(3) # 3 because it's only "ACK"/"NAK"/"DUP" if response == "DUP": print "Already registered to MDS! Resuming activity..." elif response == "NAK": print "Registration Error!" sock.close() sys.exit(0) finally: sock.close()
def register(meta_ip, meta_port, data_ip, data_port): """Creates a connection with the metadata server and register as data node """ # Establish connection sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # sock.connect((meta_ip, meta_port)) print "meta_ip ", meta_ip print "data_ip ", data_ip try: response = "NAK" sp = Packet() while response == "NAK": sp.BuildRegPacket(data_ip, data_port) sock.connect((meta_ip, meta_port)) sock.sendall(sp.getEncodedPacket()) response = sock.recv(1024) print "response ", response if response == "DUP": print "Duplicate Registration" if response == "NAK": print "Registratation ERROR" finally: sock.close()
def register(meta_ip, meta_port, data_ip, data_port): """Creates a connection with the metadata server and register as data node """ # Establish connection sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect((meta_ip, meta_port)) # Fill code try: response = "NAK" # creating packet to send to the meta-data server. packet_reg = Packet() while response == "NAK": #The packet will contain the address and the port from the datanode to be registered packet_reg.BuildRegPacket(data_ip, data_port) #send packet to meta-data server. sock.sendall(packet_reg.getEncodedPacket()) response = sock.recv(1024) if response == "ACK": print "DataNode was registered successfully" if response == "DUP": print "Duplicate Registration" if response == "NAK": print "Registration ERROR" finally: sock.close()
def register(meta_ip, meta_port, data_ip, data_port): """ Creates a connection with the metadata server and register as data node """ # Establish connection sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect((meta_ip, meta_port)) # Fill code try: response = 'NAK' p = Packet() while response == 'NAK': p.BuildRegPacket(data_ip, data_port) sock.sendall(p.getEncodedPacket().encode()) response = sock.recv(1024).decode() if response == 'DUP': print('Duplicate Registration') if response == "NAK": print('Registratation ERROR') finally: sock.close()
def register(meta_ip, meta_port, data_ip, data_port): """Creates a connection with the metadata server and register as data node """ # Establish connection # Fill code sock = socket.socket() sock.connect((meta_ip, meta_port)) try: response = "NAK" sp = Packet() while response == "NAK": sp.BuildRegPacket(data_ip, data_port) sock.sendall(sp.getEncodedPacket()) response = sock.recv(1024) response = response.decode() if response == "DUP": print("Duplicate Registration") if response == "NAK": print("Registratation ERROR") finally: sock.close()
sys.exit(1) #if no error occured connection was succesful! print( "Connection to metadata server was succesful." ) # We use the following try to determine what happens with the registration. If there was an error, if it was duplicate or if it worked! try: response = "NAK" create_packet = Packet() while response == "NAK": create_packet.BuildRegPacket(data_ip, data_port) created_socket.sendall(create_packet.getEncodedPacket()) response = created_socket.recv(1024) if response == "DUP": print "Duplicate Registration" # we add the response condition "ACK" if response == "ACK": print ("Registration process was completed!") if response == "NAK": print("error here")