public static ClientProtocol createNamenode( InetSocketAddress nameNodeAddr, Configuration conf) throws IOException { try { return createNamenode(createRPCNamenode(nameNodeAddr, conf, UnixUserGroupInformation.login(conf, true))); } catch (LoginException e) { throw (IOException)(new IOException().initCause(e)); } }
public static ProtocolProxy<ClientProtocol> createRPCNamenode( Configuration conf) throws IOException { try { return createRPCNamenode(NameNode.getAddress(conf), conf, UnixUserGroupInformation.login(conf, true)); } catch (LoginException e) { throw new IOException(e); } }
public static ClientProtocol createNamenode( InetSocketAddress nameNodeAddr, Configuration conf) throws IOException { try { return createNamenode(createRPCNamenode(nameNodeAddr, conf, UnixUserGroupInformation.login(conf, true)).getProxy()); } catch (LoginException e) { throw (IOException)(new IOException().initCause(e)); } }
this.rpcNamenode = createRPCNamenode(nameNodeAddr, conf, ugi); this.namenode = createNamenode(rpcNamenode);
this.dstFs = dstFs; this.reporter = reporter; this.srcNamenodeProtocolProxy = DFSClient.createRPCNamenode( NameNode.getAddress(this.srcFs.getUri().getAuthority()), conf, UnixUserGroupInformation.login(conf, true)); this.dstNamenodeProtocolProxy = DFSClient.createRPCNamenode( NameNode.getAddress(this.dstFs.getUri().getAuthority()), conf, UnixUserGroupInformation.login(conf, true));
this.namenodeProtocolProxy = createRPCNamenode(((NameNode)rpcNamenode).getNameNodeAddress(), conf, ugi);
/** {@inheritDoc} */ public void doGet(HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { final UnixUserGroupInformation ugi = getUGI(request); final PrintWriter out = response.getWriter(); final String filename = getFilename(request, response); final XMLOutputter xml = new XMLOutputter(out, "UTF-8"); xml.declaration(); Configuration daemonConf = (Configuration) getServletContext() .getAttribute(HttpServer.CONF_CONTEXT_ATTRIBUTE); final Configuration conf = (daemonConf == null) ? new Configuration() : new Configuration(daemonConf); final int socketTimeout = conf.getInt("dfs.socket.timeout", HdfsConstants.READ_TIMEOUT); final SocketFactory socketFactory = NetUtils.getSocketFactory(conf, ClientProtocol.class); UnixUserGroupInformation.saveToConf(conf, UnixUserGroupInformation.UGI_PROPERTY_NAME, ugi); final ProtocolProxy<ClientProtocol> nnproxy = DFSClient.createRPCNamenode(conf); try { final MD5MD5CRC32FileChecksum checksum = DFSClient.getFileChecksum( DataTransferProtocol.DATA_TRANSFER_VERSION, filename, nnproxy.getProxy(), nnproxy, socketFactory, socketTimeout); MD5MD5CRC32FileChecksum.write(xml, checksum); } catch(IOException ioe) { new RemoteException(ioe.getClass().getName(), ioe.getMessage() ).writeXml(filename, xml); } xml.endDocument(); } }
/** * Create a NameNode proxy for the client if the client and NameNode * are compatible * * @param nameNodeAddr NameNode address * @param conf configuration * @param ugi ticket * @return a NameNode proxy that's compatible with the client */ private void createRPCNamenodeIfCompatible( InetSocketAddress nameNodeAddr, Configuration conf, UnixUserGroupInformation ugi) throws IOException { try { this.namenodeProtocolProxy = createRPCNamenode(nameNodeAddr, conf, ugi); this.rpcNamenode = namenodeProtocolProxy.getProxy(); } catch (RPC.VersionMismatch e) { long clientVersion = e.getClientVersion(); namenodeVersion = e.getServerVersion(); if (clientVersion > namenodeVersion && !ProtocolCompatible.isCompatibleClientProtocol( clientVersion, namenodeVersion)) { throw new RPC.VersionIncompatible( ClientProtocol.class.getName(), clientVersion, namenodeVersion); } this.rpcNamenode = (ClientProtocol)e.getProxy(); } }