You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2014/11/07 02:33:53 UTC

svn commit: r1637285 - in /hive/trunk: cli/src/java/org/apache/hadoop/hive/cli/ cli/src/test/org/apache/hadoop/hive/cli/ itests/hive-unit/src/test/java/org/apache/hadoop/hive/jdbc/ itests/hive-unit/src/test/java/org/apache/hadoop/hive/service/ jdbc/src...

Author: hashutosh
Date: Fri Nov  7 01:33:53 2014
New Revision: 1637285

URL: http://svn.apache.org/r1637285
Log:
HIVE-6977 : Delete Hiveserver1 (Ashutosh Chauhan via Vaibhav Gumashta)

Removed:
    hive/trunk/itests/hive-unit/src/test/java/org/apache/hadoop/hive/jdbc/
    hive/trunk/itests/hive-unit/src/test/java/org/apache/hadoop/hive/service/
    hive/trunk/jdbc/src/java/org/apache/hadoop/
    hive/trunk/service/src/java/org/apache/hadoop/
    hive/trunk/service/src/test/org/apache/hadoop/
Modified:
    hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java
    hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java
    hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java
    hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliDriverMethods.java
    hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliSessionState.java
    hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestOptionsProcessor.java

Modified: hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java
URL: http://svn.apache.org/viewvc/hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java?rev=1637285&r1=1637284&r2=1637285&view=diff
==============================================================================
--- hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java (original)
+++ hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java Fri Nov  7 01:33:53 2014
@@ -68,10 +68,7 @@ import org.apache.hadoop.hive.ql.process
 import org.apache.hadoop.hive.ql.processors.CommandProcessorResponse;
 import org.apache.hadoop.hive.ql.session.SessionState;
 import org.apache.hadoop.hive.ql.session.SessionState.LogHelper;
-import org.apache.hadoop.hive.service.HiveClient;
-import org.apache.hadoop.hive.service.HiveServerException;
 import org.apache.hadoop.io.IOUtils;
-import org.apache.thrift.TException;
 
 import sun.misc.Signal;
 import sun.misc.SignalHandler;
@@ -150,50 +147,7 @@ public class CliDriver {
             stringifyException(e));
         ret = 1;
       }
-    } else if (ss.isRemoteMode()) { // remote mode -- connecting to remote hive server
-      HiveClient client = ss.getClient();
-      PrintStream out = ss.out;
-      PrintStream err = ss.err;
-
-      try {
-        client.execute(cmd_trimmed);
-        List<String> results;
-        do {
-          results = client.fetchN(LINES_TO_FETCH);
-          for (String line : results) {
-            out.println(line);
-          }
-        } while (results.size() == LINES_TO_FETCH);
-      } catch (HiveServerException e) {
-        ret = e.getErrorCode();
-        if (ret != 0) { // OK if ret == 0 -- reached the EOF
-          String errMsg = e.getMessage();
-          if (errMsg == null) {
-            errMsg = e.toString();
-          }
-          ret = e.getErrorCode();
-          err.println("[Hive Error]: " + errMsg);
-        }
-      } catch (TException e) {
-        String errMsg = e.getMessage();
-        if (errMsg == null) {
-          errMsg = e.toString();
-        }
-        ret = -10002;
-        err.println("[Thrift Error]: " + errMsg);
-      } finally {
-        try {
-          client.clean();
-        } catch (TException e) {
-          String errMsg = e.getMessage();
-          if (errMsg == null) {
-            errMsg = e.toString();
-          }
-          err.println("[Thrift Error]: Hive server is not cleaned due to thrift exception: "
-              + errMsg);
-        }
-      }
-    } else { // local mode
+    }  else { // local mode
       try {
         CommandProcessor proc = CommandProcessorFactory.get(tokens, (HiveConf) conf);
         ret = processLocalCmd(cmd, proc, ss);
@@ -695,31 +649,6 @@ public class CliDriver {
   private  int executeDriver(CliSessionState ss, HiveConf conf, OptionsProcessor oproc)
       throws Exception {
 
-    // connect to Hive Server
-    if (ss.getHost() != null) {
-      ss.connect();
-      if (ss.isRemoteMode()) {
-        prompt = "[" + ss.host + ':' + ss.port + "] " + prompt;
-        char[] spaces = new char[prompt.length()];
-        Arrays.fill(spaces, ' ');
-        prompt2 = new String(spaces);
-      }
-    }
-
-    // CLI remote mode is a thin client: only load auxJars in local mode
-    if (!ss.isRemoteMode()) {
-      // hadoop-20 and above - we need to augment classpath using hiveconf
-      // components
-      // see also: code in ExecDriver.java
-      ClassLoader loader = conf.getClassLoader();
-      String auxJars = HiveConf.getVar(conf, HiveConf.ConfVars.HIVEAUXJARS);
-      if (StringUtils.isNotBlank(auxJars)) {
-        loader = Utilities.addToClassPath(loader, StringUtils.split(auxJars, ","));
-      }
-      conf.setClassLoader(loader);
-      Thread.currentThread().setContextClassLoader(loader);
-    }
-
     CliDriver cli = new CliDriver();
     cli.setHiveVariables(oproc.getHiveVariables());
 

Modified: hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java
URL: http://svn.apache.org/viewvc/hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java?rev=1637285&r1=1637284&r2=1637285&view=diff
==============================================================================
--- hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java (original)
+++ hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/CliSessionState.java Fri Nov  7 01:33:53 2014
@@ -25,13 +25,6 @@ import java.util.Properties;
 
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.ql.session.SessionState;
-import org.apache.hadoop.hive.service.HiveClient;
-import org.apache.thrift.TException;
-import org.apache.thrift.protocol.TBinaryProtocol;
-import org.apache.thrift.protocol.TProtocol;
-import org.apache.thrift.transport.TSocket;
-import org.apache.thrift.transport.TTransport;
-import org.apache.thrift.transport.TTransportException;
 
 /**
  * SessionState for hive cli.
@@ -63,66 +56,16 @@ public class CliSessionState extends Ses
    */
   public List<String> initFiles = new ArrayList<String>();
 
-  /**
-   * host name and port number of remote Hive server
-   */
-  protected String host;
-  protected int port;
-
-  private boolean remoteMode;
-
-  private TTransport transport;
-  private HiveClient client;
-
   public CliSessionState(HiveConf conf) {
     super(conf);
-    remoteMode = false;
-  }
-
-  /**
-   * Connect to Hive Server
-   */
-  public void connect() throws TTransportException {
-    transport = new TSocket(host, port);
-    TProtocol protocol = new TBinaryProtocol(transport);
-    client = new HiveClient(protocol);
-    transport.open();
-    remoteMode = true;
-  }
-
-  public void setHost(String host) {
-    this.host = host;
-  }
-
-  public String getHost() {
-    return host;
-  }
-
-  public int getPort() {
-    return port;
   }
 
   @Override
   public void close() {
     try {
       super.close();
-      if (remoteMode) {
-        client.clean();
-        transport.close();
-      }
     } catch (IOException ioe) {
       ioe.printStackTrace();
-    } catch (TException e) {
-      e.printStackTrace();
-    }
+    } 
   }
-
-  public boolean isRemoteMode() {
-    return remoteMode;
-  }
-
-  public HiveClient getClient() {
-    return client;
-  }
-
 }

Modified: hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java
URL: http://svn.apache.org/viewvc/hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java?rev=1637285&r1=1637284&r2=1637285&view=diff
==============================================================================
--- hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java (original)
+++ hive/trunk/cli/src/java/org/apache/hadoop/hive/cli/OptionsProcessor.java Fri Nov  7 01:33:53 2014
@@ -83,20 +83,6 @@ public class OptionsProcessor {
         .withDescription("Use value for given property")
         .create());
 
-    // -h hostname/ippaddress
-    options.addOption(OptionBuilder
-        .hasArg()
-        .withArgName("hostname")
-        .withDescription("connecting to Hive Server on remote host")
-        .create('h'));
-
-    // -p port
-    options.addOption(OptionBuilder
-        .hasArg()
-        .withArgName("port")
-        .withDescription("connecting to Hive Server on port number")
-        .create('p'));
-
     // Substitution option -d, --define
     options.addOption(OptionBuilder
         .withValueSeparator()
@@ -169,10 +155,6 @@ public class OptionsProcessor {
 
     ss.setIsVerbose(commandLine.hasOption('v'));
 
-    ss.host = (String) commandLine.getOptionValue('h');
-
-    ss.port = Integer.parseInt((String) commandLine.getOptionValue('p', "10000"));
-
     String[] initFiles = commandLine.getOptionValues('i');
     if (null != initFiles) {
       ss.initFiles = Arrays.asList(initFiles);

Modified: hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliDriverMethods.java
URL: http://svn.apache.org/viewvc/hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliDriverMethods.java?rev=1637285&r1=1637284&r2=1637285&view=diff
==============================================================================
--- hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliDriverMethods.java (original)
+++ hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliDriverMethods.java Fri Nov  7 01:33:53 2014
@@ -56,10 +56,7 @@ import org.apache.hadoop.hive.metastore.
 import org.apache.hadoop.hive.ql.CommandNeedRetryException;
 import org.apache.hadoop.hive.ql.Driver;
 import org.apache.hadoop.hive.ql.processors.CommandProcessorResponse;
-import org.apache.hadoop.hive.service.HiveClient;
-import org.apache.hadoop.hive.service.HiveServerException;
 import org.apache.hadoop.util.Shell;
-import org.apache.thrift.TException;
 
 
 // Cannot call class TestCliDriver since that's the name of the generated
@@ -231,66 +228,6 @@ public class TestCliDriverMethods extend
 
   }
 
-  /**
-   * test remote execCommand
-   */
-  public void testRemoteCall() throws Exception {
-    MyCliSessionState ss = new MyCliSessionState(new HiveConf(),
-        org.apache.hadoop.hive.cli.TestCliDriverMethods.MyCliSessionState.ClientResult.RETURN_OK);
-    ss.err = System.err;
-    ByteArrayOutputStream data = new ByteArrayOutputStream();
-    ss.out = new PrintStream(data);
-    MyCliSessionState.start(ss);
-
-    CliDriver cliDriver = new CliDriver();
-    cliDriver.processCmd("remote command");
-    assertTrue(data.toString().contains("test result"));
-
-  }
-
-  /**
-   * test remote Exception
-   */
-  public void testServerException() throws Exception {
-    MyCliSessionState ss = new MyCliSessionState(
-        new HiveConf(),
-        org.apache.hadoop.hive.cli.TestCliDriverMethods.MyCliSessionState.ClientResult.RETURN_SERVER_EXCEPTION);
-    ByteArrayOutputStream data = new ByteArrayOutputStream();
-    ss.err = new PrintStream(data);
-    ss.out = System.out;
-    MyCliSessionState.start(ss);
-
-    CliDriver cliDriver = new CliDriver();
-    cliDriver.processCmd("remote command");
-    assertTrue(data.toString().contains("[Hive Error]: test HiveServerException"));
-    data.reset();
-
-
-  }
-
-  /**
-   * test remote Exception
-   */
-  public void testServerTException() throws Exception {
-    MyCliSessionState ss = new MyCliSessionState(
-        new HiveConf(),
-        org.apache.hadoop.hive.cli.TestCliDriverMethods.MyCliSessionState.ClientResult.RETURN_T_EXCEPTION);
-    ByteArrayOutputStream data = new ByteArrayOutputStream();
-    ss.err = new PrintStream(data);
-    ss.out = System.out;
-    MyCliSessionState.start(ss);
-
-    CliDriver cliDriver = new CliDriver();
-    cliDriver.processCmd("remote command");
-    assertTrue(data.toString().contains("[Thrift Error]: test TException"));
-    assertTrue(data.toString().contains(
-        "[Thrift Error]: Hive server is not cleaned due to thrift exception: test TException"));
-
-  }
-
-  /**
-   * test remote Exception
-   */
   public void testProcessSelectDatabase() throws Exception {
     CliSessionState sessinState = new CliSessionState(new HiveConf());
     CliSessionState.start(sessinState);
@@ -521,63 +458,4 @@ public class TestCliDriverMethods extend
       return status;
     }
   }
-
-  private static class MyCliSessionState extends CliSessionState {
-
-    public enum ClientResult {
-      RETURN_OK, RETURN_SERVER_EXCEPTION, RETURN_T_EXCEPTION
-    };
-
-    private final ClientResult result;
-
-    public MyCliSessionState(HiveConf conf, ClientResult result) {
-      super(conf);
-      this.result = result;
-    }
-
-    @Override
-    public boolean isRemoteMode() {
-      return true;
-    }
-
-    @Override
-    public HiveClient getClient() {
-
-      HiveClient result = mock(HiveClient.class);
-      if (ClientResult.RETURN_OK.equals(this.result)) {
-        List<String> fetchResult = new ArrayList<String>(1);
-        fetchResult.add("test result");
-        try {
-          when(result.fetchN(anyInt())).thenReturn(fetchResult);
-        } catch (HiveServerException e) {
-        } catch (Exception e) {
-        }
-      } else if (ClientResult.RETURN_SERVER_EXCEPTION.equals(this.result)) {
-        HiveServerException exception = new HiveServerException("test HiveServerException", 10,
-            "sql state");
-        try {
-          when(result.fetchN(anyInt())).thenThrow(exception);
-
-          when(result.fetchN(anyInt())).thenThrow(exception);
-        } catch (TException e) {
-          ;
-        }
-        return result;
-      } else if (ClientResult.RETURN_T_EXCEPTION.equals(this.result)) {
-        TException exception = new TException("test TException");
-        try {
-          // org.mockito.Mockito.
-          doThrow(exception).when(result).clean();
-          when(result.fetchN(anyInt())).thenThrow(exception);
-        } catch (TException e) {
-          e.printStackTrace();
-        }
-        return result;
-      }
-      return result;
-    }
-
-  }
-
-
 }

Modified: hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliSessionState.java
URL: http://svn.apache.org/viewvc/hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliSessionState.java?rev=1637285&r1=1637284&r2=1637285&view=diff
==============================================================================
--- hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliSessionState.java (original)
+++ hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestCliSessionState.java Fri Nov  7 01:33:53 2014
@@ -18,21 +18,10 @@
 package org.apache.hadoop.hive.cli;
 
 import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.net.InetAddress;
-import java.net.ServerSocket;
-import java.net.Socket;
 
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.MetaStoreUtils;
 import org.apache.hadoop.hive.ql.session.SessionState;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
 import org.junit.Test;
 
 /**
@@ -40,46 +29,6 @@ import org.junit.Test;
  */
 public class TestCliSessionState {
 
-  private static TCPServer server;
-  private static String command = null;
-
-  @BeforeClass
-  public static void start() throws Exception {
-    // start fake server
-    server = new TCPServer();
-    Thread thread = new Thread(server);
-    thread.start();
-    // wait for start server;
-    while (server.getPort() == 0) {
-      Thread.sleep(20);
-    }
-  }
-
-  @AfterClass
-  public static void stop() throws IOException {
-    server.stop();
-  }
-
-  /**
-   * test CliSessionState for remote
-   */
-  @Test
-  public void testConnect() throws Exception {
-    CliSessionState sessionState = new CliSessionState(new HiveConf());
-    sessionState.port = server.getPort();
-    sessionState.setHost(InetAddress.getLocalHost().getHostName());
-    // check connect
-    sessionState.connect();
-    assertTrue(sessionState.isRemoteMode());
-    assertEquals(server.getPort(), sessionState.getPort());
-    assertEquals(InetAddress.getLocalHost().getHostName(), sessionState.getHost());
-    assertNotNull(sessionState.getClient());
-    sessionState.close();
-    // close should send command clean
-    assertEquals(command, "clean");
-
-  }
-
   /**
    * test default db name
    */
@@ -89,44 +38,4 @@ public class TestCliSessionState {
     assertEquals(MetaStoreUtils.DEFAULT_DATABASE_NAME,
         SessionState.get().getCurrentDatabase());
   }
-
-  /**
-   * fake hive server
-   */
-  private static class TCPServer implements Runnable {
-    private int port = 0;
-    private boolean stop = false;
-    private ServerSocket welcomeSocket;
-
-    public void run() {
-      try {
-
-        welcomeSocket = new ServerSocket(0);
-        port = welcomeSocket.getLocalPort();
-        while (!stop) {
-          byte[] buffer = new byte[512];
-          Socket connectionSocket = welcomeSocket.accept();
-          InputStream input = connectionSocket.getInputStream();
-          OutputStream output = connectionSocket.getOutputStream();
-          int read = input.read(buffer);
-          // command without service bytes
-          command = new String(buffer, 8, read - 13);
-          // send derived
-          output.write(buffer, 0, read);
-        }
-      } catch (IOException e) {
-        ;
-      }
-
-    }
-
-    public int getPort() {
-      return port;
-    }
-
-    public void stop() throws IOException {
-      stop = true;
-      welcomeSocket.close();
-    }
-  }
 }

Modified: hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestOptionsProcessor.java
URL: http://svn.apache.org/viewvc/hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestOptionsProcessor.java?rev=1637285&r1=1637284&r2=1637285&view=diff
==============================================================================
--- hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestOptionsProcessor.java (original)
+++ hive/trunk/cli/src/test/org/apache/hadoop/hive/cli/TestOptionsProcessor.java Fri Nov  7 01:33:53 2014
@@ -41,8 +41,7 @@ public class TestOptionsProcessor {
     System.clearProperty("hivevar");
     assertNull(System.getProperty("_A"));
     String[] args = { "-hiveconf", "_A=B", "-define", "C=D", "-hivevar", "X=Y",
-        "-S", "true", "-database", "testDb", "-e", "execString",  "-v", "true",
-        "-h", "yahoo.host", "-p", "3000"};
+        "-S", "true", "-database", "testDb", "-e", "execString",  "-v", "true"};
 
     // stage 1
     assertTrue(processor.process_stage1(args));
@@ -55,8 +54,6 @@ public class TestOptionsProcessor {
     processor.process_stage2(sessionState);
     assertEquals("testDb", sessionState.database);
     assertEquals("execString", sessionState.execString);
-    assertEquals("yahoo.host", sessionState.host);
-    assertEquals(3000, sessionState.port);
     assertEquals(0, sessionState.initFiles.size());
     assertTrue(sessionState.getIsVerbose());
     sessionState.setConf(null);