You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ga...@apache.org on 2015/12/14 20:30:38 UTC
[1/2] hive git commit: HIVE-10982 Customizable the value of
java.sql.statement.setFetchSize in Hive JDBC Driver (Bing Li via Alan Gates)
Repository: hive
Updated Branches:
refs/heads/master 55dc00874 -> 69f03b86c
HIVE-10982 Customizable the value of java.sql.statement.setFetchSize in Hive JDBC Driver (Bing Li via Alan Gates)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/02d2972f
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/02d2972f
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/02d2972f
Branch: refs/heads/master
Commit: 02d2972f46099f411b31c587be1c8982cb5bbb91
Parents: b98da82
Author: Alan Gates <ga...@hortonworks.com>
Authored: Mon Dec 14 11:21:49 2015 -0800
Committer: Alan Gates <ga...@hortonworks.com>
Committed: Mon Dec 14 11:21:49 2015 -0800
----------------------------------------------------------------------
.../org/apache/hive/jdbc/TestJdbcDriver2.java | 8 ++++
.../org/apache/hive/jdbc/HiveConnection.java | 9 +++-
.../org/apache/hive/jdbc/HiveStatement.java | 43 ++++++++++++--------
jdbc/src/java/org/apache/hive/jdbc/Utils.java | 2 +
4 files changed, 44 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/02d2972f/itests/hive-unit/src/test/java/org/apache/hive/jdbc/TestJdbcDriver2.java
----------------------------------------------------------------------
diff --git a/itests/hive-unit/src/test/java/org/apache/hive/jdbc/TestJdbcDriver2.java b/itests/hive-unit/src/test/java/org/apache/hive/jdbc/TestJdbcDriver2.java
index 8cb9689..e9206b9 100644
--- a/itests/hive-unit/src/test/java/org/apache/hive/jdbc/TestJdbcDriver2.java
+++ b/itests/hive-unit/src/test/java/org/apache/hive/jdbc/TestJdbcDriver2.java
@@ -307,6 +307,14 @@ public class TestJdbcDriver2 {
checkBadUrl("jdbc:hive2://localhost:10000test");
}
+ @Test
+ public void testURLWithFetchSize() throws SQLException {
+ Connection con = getConnection("default;fetchSize=1234");
+ Statement stmt = con.createStatement();
+
+ assertEquals(stmt.getFetchSize(), 1234);
+ }
+
private void checkBadUrl(String url) throws SQLException {
try{
DriverManager.getConnection(url, "", "");
http://git-wip-us.apache.org/repos/asf/hive/blob/02d2972f/jdbc/src/java/org/apache/hive/jdbc/HiveConnection.java
----------------------------------------------------------------------
diff --git a/jdbc/src/java/org/apache/hive/jdbc/HiveConnection.java b/jdbc/src/java/org/apache/hive/jdbc/HiveConnection.java
index c312ece..3c5dc0c 100644
--- a/jdbc/src/java/org/apache/hive/jdbc/HiveConnection.java
+++ b/jdbc/src/java/org/apache/hive/jdbc/HiveConnection.java
@@ -122,6 +122,7 @@ public class HiveConnection implements java.sql.Connection {
private final List<TProtocolVersion> supportedProtocols = new LinkedList<TProtocolVersion>();
private int loginTimeout = 0;
private TProtocolVersion protocol;
+ private int fetchSize = HiveStatement.DEFAULT_FETCH_SIZE;
public HiveConnection(String uri, Properties info) throws SQLException {
setupLoginTimeout();
@@ -143,6 +144,10 @@ public class HiveConnection implements java.sql.Connection {
hiveVarMap = connParams.getHiveVars();
isEmbeddedMode = connParams.isEmbeddedMode();
+ if (sessConfMap.containsKey(JdbcConnectionParams.FETCH_SIZE)) {
+ fetchSize = Integer.parseInt(sessConfMap.get(JdbcConnectionParams.FETCH_SIZE));
+ }
+
if (isEmbeddedMode) {
EmbeddedThriftBinaryCLIService embeddedClient = new EmbeddedThriftBinaryCLIService();
embeddedClient.init(null);
@@ -821,7 +826,7 @@ public class HiveConnection implements java.sql.Connection {
if (isClosed) {
throw new SQLException("Can't create Statement, connection is closed");
}
- return new HiveStatement(this, client, sessHandle);
+ return new HiveStatement(this, client, sessHandle, fetchSize);
}
/*
@@ -842,7 +847,7 @@ public class HiveConnection implements java.sql.Connection {
" is not supported", "HYC00"); // Optional feature not implemented
}
return new HiveStatement(this, client, sessHandle,
- resultSetType == ResultSet.TYPE_SCROLL_INSENSITIVE);
+ resultSetType == ResultSet.TYPE_SCROLL_INSENSITIVE, fetchSize);
}
/*
http://git-wip-us.apache.org/repos/asf/hive/blob/02d2972f/jdbc/src/java/org/apache/hive/jdbc/HiveStatement.java
----------------------------------------------------------------------
diff --git a/jdbc/src/java/org/apache/hive/jdbc/HiveStatement.java b/jdbc/src/java/org/apache/hive/jdbc/HiveStatement.java
index 180f99e8..3f9024a 100644
--- a/jdbc/src/java/org/apache/hive/jdbc/HiveStatement.java
+++ b/jdbc/src/java/org/apache/hive/jdbc/HiveStatement.java
@@ -18,16 +18,6 @@
package org.apache.hive.jdbc;
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.SQLFeatureNotSupportedException;
-import java.sql.SQLWarning;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
import org.apache.hive.service.cli.RowSet;
import org.apache.hive.service.cli.RowSetFactory;
import org.apache.hive.service.cli.thrift.TCLIService;
@@ -37,23 +27,33 @@ import org.apache.hive.service.cli.thrift.TCloseOperationReq;
import org.apache.hive.service.cli.thrift.TCloseOperationResp;
import org.apache.hive.service.cli.thrift.TExecuteStatementReq;
import org.apache.hive.service.cli.thrift.TExecuteStatementResp;
+import org.apache.hive.service.cli.thrift.TFetchOrientation;
+import org.apache.hive.service.cli.thrift.TFetchResultsReq;
+import org.apache.hive.service.cli.thrift.TFetchResultsResp;
import org.apache.hive.service.cli.thrift.TGetOperationStatusReq;
import org.apache.hive.service.cli.thrift.TGetOperationStatusResp;
import org.apache.hive.service.cli.thrift.TOperationHandle;
import org.apache.hive.service.cli.thrift.TSessionHandle;
-import org.apache.hive.service.cli.thrift.TFetchResultsReq;
-import org.apache.hive.service.cli.thrift.TFetchResultsResp;
-import org.apache.hive.service.cli.thrift.TFetchOrientation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+import java.sql.SQLWarning;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
/**
* HiveStatement.
*
*/
public class HiveStatement implements java.sql.Statement {
public static final Logger LOG = LoggerFactory.getLogger(HiveStatement.class.getName());
- private static final int DEFAULT_FETCH_SIZE = 1000;
+ public static final int DEFAULT_FETCH_SIZE = 1000;
private final HiveConnection connection;
private TCLIService.Iface client;
private TOperationHandle stmtHandle = null;
@@ -110,15 +110,26 @@ public class HiveStatement implements java.sql.Statement {
public HiveStatement(HiveConnection connection, TCLIService.Iface client,
TSessionHandle sessHandle) {
- this(connection, client, sessHandle, false);
+ this(connection, client, sessHandle, false, DEFAULT_FETCH_SIZE);
+ }
+
+ public HiveStatement(HiveConnection connection, TCLIService.Iface client,
+ TSessionHandle sessHandle, int fetchSize) {
+ this(connection, client, sessHandle, false, fetchSize);
+ }
+
+ public HiveStatement(HiveConnection connection, TCLIService.Iface client,
+ TSessionHandle sessHandle, boolean isScrollableResultset) {
+ this(connection, client, sessHandle, isScrollableResultset, DEFAULT_FETCH_SIZE);
}
public HiveStatement(HiveConnection connection, TCLIService.Iface client,
- TSessionHandle sessHandle, boolean isScrollableResultset) {
+ TSessionHandle sessHandle, boolean isScrollableResultset, int fetchSize) {
this.connection = connection;
this.client = client;
this.sessHandle = sessHandle;
this.isScrollableResultset = isScrollableResultset;
+ this.fetchSize = fetchSize;
}
/*
http://git-wip-us.apache.org/repos/asf/hive/blob/02d2972f/jdbc/src/java/org/apache/hive/jdbc/Utils.java
----------------------------------------------------------------------
diff --git a/jdbc/src/java/org/apache/hive/jdbc/Utils.java b/jdbc/src/java/org/apache/hive/jdbc/Utils.java
index d3f8878..c9fbe1f 100644
--- a/jdbc/src/java/org/apache/hive/jdbc/Utils.java
+++ b/jdbc/src/java/org/apache/hive/jdbc/Utils.java
@@ -112,6 +112,8 @@ class Utils {
static final String DEFAULT_COOKIE_NAMES_HS2 = "hive.server2.auth";
// The http header prefix for additional headers which have to be appended to the request
static final String HTTP_HEADER_PREFIX = "http.header.";
+ // Set the fetchSize
+ static final String FETCH_SIZE = "fetchSize";
// --------------- Begin 2 way ssl options -------------------------
// Use two way ssl. This param will take effect only when ssl=true
[2/2] hive git commit: Merge remote-tracking branch 'apache/master'
Posted by ga...@apache.org.
Merge remote-tracking branch 'apache/master'
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/69f03b86
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/69f03b86
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/69f03b86
Branch: refs/heads/master
Commit: 69f03b86c4ded478bff11f8bf163c8012b08c614
Parents: 02d2972 55dc008
Author: Alan Gates <ga...@hortonworks.com>
Authored: Mon Dec 14 11:24:05 2015 -0800
Committer: Alan Gates <ga...@hortonworks.com>
Committed: Mon Dec 14 11:24:05 2015 -0800
----------------------------------------------------------------------
.../metrics/metrics2/CodahaleMetrics.java | 7 ++
.../org/apache/hadoop/hive/conf/HiveConf.java | 2 +
.../hive/common/metrics/MetricsTestUtils.java | 9 +-
.../hive/metastore/TestMetaStoreMetrics.java | 113 +++++--------------
.../hbase/TestHBaseMetastoreMetrics.java | 32 ++----
.../hive/jdbc/miniHS2/TestHs2Metrics.java | 42 ++++---
.../hadoop/hive/metastore/HiveMetaStore.java | 2 +-
.../TestHiveMetaStorePartitionSpecs.java | 2 +-
ql/pom.xml | 7 ++
.../zookeeper/TestZookeeperLockManager.java | 29 ++---
service/pom.xml | 14 +--
.../cli/session/TestSessionManagerMetrics.java | 23 ++--
12 files changed, 109 insertions(+), 173 deletions(-)
----------------------------------------------------------------------