LENS-621 : Fix seekToStart for closed resultsets in JDBCDriver

Project: http://git-wip-us.apache.org/repos/asf/incubator-lens/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-lens/commit/3eddcb5b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-lens/tree/3eddcb5b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-lens/diff/3eddcb5b

Branch: refs/heads/current-release-line
Commit: 3eddcb5b2f5025bfc032155c71171c33683db67d
Parents: 77f6aac
Author: Amareshwari Sriramadasu <[email protected]>
Authored: Mon Jun 22 10:51:06 2015 +0530
Committer: Amareshwari Sriramadasu <[email protected]>
Committed: Mon Jun 22 10:51:06 2015 +0530

----------------------------------------------------------------------
 .../src/main/java/org/apache/lens/client/LensClient.java       | 6 ++----
 .../main/java/org/apache/lens/client/LensClientResultSet.java  | 2 +-
 .../main/java/org/apache/lens/driver/jdbc/JDBCResultSet.java   | 2 +-
 3 files changed, 4 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-lens/blob/3eddcb5b/lens-client/src/main/java/org/apache/lens/client/LensClient.java
----------------------------------------------------------------------
diff --git a/lens-client/src/main/java/org/apache/lens/client/LensClient.java 
b/lens-client/src/main/java/org/apache/lens/client/LensClient.java
index 51f586a..b15b024 100644
--- a/lens-client/src/main/java/org/apache/lens/client/LensClient.java
+++ b/lens-client/src/main/java/org/apache/lens/client/LensClient.java
@@ -144,8 +144,7 @@ public class LensClient {
     }
     LensClientResultSet result = null;
     if (statement.getStatus().isResultSetAvailable()) {
-      result = new LensClientResultSet(statement.getResultSet(),
-        statement.getResultSetMetaData());
+      result = new LensClientResultSet(statement.getResultSetMetaData(), 
statement.getResultSet());
     }
     return new LensClientResultSetWithStats(result, statement.getQuery());
   }
@@ -161,8 +160,7 @@ public class LensClient {
     }
     LensClientResultSet result = null;
     if (statement.getStatus().isResultSetAvailable()) {
-      result = new LensClientResultSet(statement.getResultSet(),
-        statement.getResultSetMetaData());
+      result = new LensClientResultSet(statement.getResultSetMetaData(), 
statement.getResultSet());
     }
     return new LensClientResultSetWithStats(result, statement.getQuery());
   }

http://git-wip-us.apache.org/repos/asf/incubator-lens/blob/3eddcb5b/lens-client/src/main/java/org/apache/lens/client/LensClientResultSet.java
----------------------------------------------------------------------
diff --git 
a/lens-client/src/main/java/org/apache/lens/client/LensClientResultSet.java 
b/lens-client/src/main/java/org/apache/lens/client/LensClientResultSet.java
index 79e8abd..674926f 100644
--- a/lens-client/src/main/java/org/apache/lens/client/LensClientResultSet.java
+++ b/lens-client/src/main/java/org/apache/lens/client/LensClientResultSet.java
@@ -38,7 +38,7 @@ public class LensClientResultSet {
    * @param result            the result
    * @param resultSetMetaData the result set meta data
    */
-  public LensClientResultSet(QueryResult result, QueryResultSetMetadata 
resultSetMetaData) {
+  public LensClientResultSet(QueryResultSetMetadata resultSetMetaData, 
QueryResult result) {
     this.result = result;
     this.resultSetMetadata = resultSetMetaData;
   }

http://git-wip-us.apache.org/repos/asf/incubator-lens/blob/3eddcb5b/lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/JDBCResultSet.java
----------------------------------------------------------------------
diff --git 
a/lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/JDBCResultSet.java 
b/lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/JDBCResultSet.java
index bbcc3f1..2687673 100644
--- 
a/lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/JDBCResultSet.java
+++ 
b/lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/JDBCResultSet.java
@@ -298,7 +298,7 @@ public class JDBCResultSet extends InMemoryResultSet {
   @Override
   public boolean seekToStart() throws LensException {
     try {
-      if (!resultSet.isBeforeFirst()) {
+      if (!resultSet.isClosed() && !resultSet.isBeforeFirst()) {
         resultSet.beforeFirst();
       }
       return true;

Reply via email to