You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by ma...@apache.org on 2016/12/05 05:42:58 UTC
kylin git commit: KYLIN-2236 let query cache honor backdoortoggles in
query request
Repository: kylin
Updated Branches:
refs/heads/master 955615262 -> 8f3239bf9
KYLIN-2236 let query cache honor backdoortoggles in query request
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/8f3239bf
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/8f3239bf
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/8f3239bf
Branch: refs/heads/master
Commit: 8f3239bf9ea4f1abd8d2c814967d425d4da68a45
Parents: 9556152
Author: Hongbin Ma <ma...@apache.org>
Authored: Mon Dec 5 13:43:03 2016 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Mon Dec 5 13:43:03 2016 +0800
----------------------------------------------------------------------
.../org/apache/kylin/jdbc/ITJDBCDriverTest.java | 30 ++++++++++
.../apache/kylin/rest/request/SQLRequest.java | 63 +++++++-------------
.../apache/kylin/rest/service/QueryService.java | 1 +
3 files changed, 53 insertions(+), 41 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kylin/blob/8f3239bf/kylin-it/src/test/java/org/apache/kylin/jdbc/ITJDBCDriverTest.java
----------------------------------------------------------------------
diff --git a/kylin-it/src/test/java/org/apache/kylin/jdbc/ITJDBCDriverTest.java b/kylin-it/src/test/java/org/apache/kylin/jdbc/ITJDBCDriverTest.java
index 4c847bf..2f8991b 100644
--- a/kylin-it/src/test/java/org/apache/kylin/jdbc/ITJDBCDriverTest.java
+++ b/kylin-it/src/test/java/org/apache/kylin/jdbc/ITJDBCDriverTest.java
@@ -261,6 +261,36 @@ public class ITJDBCDriverTest extends HBaseMetadataTestCase {
}
+
+ @Test
+ public void testResultSetWithMaxRows() throws Exception {
+ String sql = "select LSTG_FORMAT_NAME, sum(price) as GMV, count(1) as TRANS_CNT from test_kylin_fact \n" + " group by LSTG_FORMAT_NAME ";
+
+ Connection conn = getConnection();
+ Statement statement = conn.createStatement();
+ statement.setMaxRows(2);
+
+ statement.execute(sql);
+
+ ResultSet rs = statement.getResultSet();
+
+ int count = 0;
+ while (rs.next()) {
+ count++;
+ String lstg = rs.getString(1);
+ double gmv = rs.getDouble(2);
+ int trans_count = rs.getInt(3);
+
+ System.out.println("Get a line: LSTG_FORMAT_NAME=" + lstg + ", GMV=" + gmv + ", TRANS_CNT=" + trans_count);
+ }
+
+ Assert.assertTrue(count == 2);
+ statement.close();
+ rs.close();
+ conn.close();
+
+ }
+
private static class SystemPropertiesOverride {
HashMap<String, String> backup = new HashMap<String, String>();
http://git-wip-us.apache.org/repos/asf/kylin/blob/8f3239bf/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java
----------------------------------------------------------------------
diff --git a/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java b/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java
index 96f5faa..bd8b7e2 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/request/SQLRequest.java
@@ -83,50 +83,31 @@ public class SQLRequest implements Serializable {
this.acceptPartial = acceptPartial;
}
+
@Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + (acceptPartial ? 1231 : 1237);
- result = prime * result + ((offset == null) ? 0 : offset.hashCode());
- result = prime * result + ((limit == null) ? 0 : limit.hashCode());
- result = prime * result + ((project == null) ? 0 : project.hashCode());
- result = prime * result + ((sql == null) ? 0 : sql.hashCode());
- return result;
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+
+ SQLRequest that = (SQLRequest) o;
+
+ if (acceptPartial != that.acceptPartial) return false;
+ if (sql != null ? !sql.equals(that.sql) : that.sql != null) return false;
+ if (project != null ? !project.equals(that.project) : that.project != null) return false;
+ if (offset != null ? !offset.equals(that.offset) : that.offset != null) return false;
+ if (limit != null ? !limit.equals(that.limit) : that.limit != null) return false;
+ return backdoorToggles != null ? backdoorToggles.equals(that.backdoorToggles) : that.backdoorToggles == null;
+
}
@Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- SQLRequest other = (SQLRequest) obj;
- if (acceptPartial != other.acceptPartial)
- return false;
- if (offset == null) {
- if (other.offset != null)
- return false;
- } else if (!offset.equals(other.offset))
- return false;
- if (limit == null) {
- if (other.limit != null)
- return false;
- } else if (!limit.equals(other.limit))
- return false;
- if (project == null) {
- if (other.project != null)
- return false;
- } else if (!project.equals(other.project))
- return false;
- if (sql == null) {
- if (other.sql != null)
- return false;
- } else if (!sql.equals(other.sql))
- return false;
- return true;
+ public int hashCode() {
+ int result = sql != null ? sql.hashCode() : 0;
+ result = 31 * result + (project != null ? project.hashCode() : 0);
+ result = 31 * result + (offset != null ? offset.hashCode() : 0);
+ result = 31 * result + (limit != null ? limit.hashCode() : 0);
+ result = 31 * result + (acceptPartial ? 1 : 0);
+ result = 31 * result + (backdoorToggles != null ? backdoorToggles.hashCode() : 0);
+ return result;
}
-
}
http://git-wip-us.apache.org/repos/asf/kylin/blob/8f3239bf/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java
----------------------------------------------------------------------
diff --git a/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java b/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java
index e1787d7..8810c85 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java
@@ -513,6 +513,7 @@ public class QueryService extends BasicService {
private void processStatementAttr(Statement s, SQLRequest sqlRequest) throws SQLException {
Integer statementMaxRows = BackdoorToggles.getStatementMaxRows();
if (statementMaxRows != null) {
+ logger.info("Setting current statement's max rows to {}", statementMaxRows);
s.setMaxRows(statementMaxRows);
}
}