>From Peeyush Gupta <[email protected]>:

Peeyush Gupta has uploaded this change for review. ( 
https://asterix-gerrit.ics.uci.edu/c/asterixdb-clients/+/17716 )


Change subject: WIP: Debug logs
......................................................................

WIP: Debug logs

Change-Id: Ib10fc02faf1cf62bbe62dac24c905ef72990f3b1
---
M 
asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBDriverBase.java
M 
asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBPreparedStatement.java
M 
asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBConnection.java
M 
asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBStatement.java
M 
asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBMetaStatement.java
M 
asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBResultSet.java
M 
asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBProtocolBase.java
7 files changed, 92 insertions(+), 3 deletions(-)



  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb-clients 
refs/changes/16/17716/1

diff --git 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBConnection.java
 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBConnection.java
index ca61992..20f505a 100644
--- 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBConnection.java
+++ 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBConnection.java
@@ -68,6 +68,7 @@
             throws SQLException {
         this.url = Objects.requireNonNull(url);
         this.protocol = Objects.requireNonNull(protocol);
+        getLogger().info("Creating new ADBConnection object for " + url);
         this.databaseVersion = databaseVersion;
         this.statements = new ConcurrentLinkedQueue<>();
         this.warning = connectWarning;
@@ -77,6 +78,7 @@
         this.catalogIncludesSchemaless =
                 (Boolean) 
ADBDriverProperty.Common.CATALOG_INCLUDES_SCHEMALESS.fetchPropertyValue(properties);
         initCatalogSchema(protocol, dataverseCanonicalName);
+        getLogger().info("Created new ADB Connection object " + this);
     }

     protected void initCatalogSchema(ADBProtocolBase protocol, String 
dataverseCanonicalName) throws SQLException {
@@ -128,6 +130,7 @@
     }

     protected void closeImpl(Executor executor) throws SQLException {
+        getLogger().info("Closing connection for " + this);
         boolean wasClosed = closed.getAndSet(true);
         if (wasClosed) {
             return;
@@ -139,12 +142,15 @@
                 try {
                     closeStatementsAndProtocol();
                 } catch (SQLException e) {
+                    getLogger().info("Error closing connection " + 
e.getMessage());
                     if (getLogger().isLoggable(Level.FINE)) {
                         getLogger().log(Level.FINE, e.getMessage(), e);
                     }
                 }
             });
         }
+        getLogger().info("Successfully closed connection for " + this);
+
     }

     protected void closeStatementsAndProtocol() throws SQLException {
@@ -154,6 +160,7 @@
         } catch (SQLException e) {
             err = e;
         }
+        getLogger().info("Closing protocol " + protocol);
         try {
             protocol.close();
         } catch (SQLException e) {
@@ -163,8 +170,10 @@
             err = e;
         }
         if (err != null) {
+            getLogger().info("Error closing protocol " + protocol);
             throw err;
         }
+        getLogger().info("Successfully close protocol " + protocol);
     }

     @Override
@@ -188,7 +197,10 @@
         if (timeoutSeconds < 0) {
             throw 
getErrorReporter().errorParameterValueNotSupported("timeoutSeconds");
         }
-        return protocol.ping(timeoutSeconds);
+        boolean isValid = protocol.ping(timeoutSeconds);
+        getLogger().log(Level.INFO, "Called is valid for {0}, with timeout 
{1}, returned {2}",
+                new Object[] { this, timeoutSeconds, isValid });
+        return isValid;
     }

     @Override
@@ -391,14 +403,17 @@
     // Statement lifecycle

     private void registerStatement(ADBStatement stmt) {
+        getLogger().info("Registering stmt " + stmt);
         statements.add(Objects.requireNonNull(stmt));
     }

     void deregisterStatement(ADBStatement stmt) {
+        getLogger().info("Deregistering stmt " + stmt);
         statements.remove(Objects.requireNonNull(stmt));
     }

     private void closeRegisteredStatements() throws SQLException {
+        getLogger().info("Closing statements for " + this);
         SQLException err = null;
         ADBStatement statement;
         while ((statement = statements.poll()) != null) {
@@ -412,8 +427,10 @@
             }
         }
         if (err != null) {
+            getLogger().info("Error closing statement " + err.getMessage());
             throw err;
         }
+        getLogger().info("Closed statements for " + this);
     }

     // Transaction control
@@ -591,6 +608,7 @@

     @Override
     public String getClientInfo(String name) throws SQLException {
+        getLogger().info("Getting client info by name for " + name);
         checkClosed();
         return null;
     }
diff --git 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBDriverBase.java
 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBDriverBase.java
index 63dc5a8..0004fd9 100644
--- 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBDriverBase.java
+++ 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBDriverBase.java
@@ -154,7 +154,6 @@
         if (port <= 0) {
             port = defaultApiPort;
         }
-
         Map<ADBDriverProperty, Object> properties = new HashMap<>();
         Map<String, ADBDriverProperty> supportedProperties = 
getOrCreateSupportedPropertiesIndex();
         SQLWarning warning = new SQLWarning();
@@ -168,8 +167,12 @@

         ADBDriverContext driverContext = getOrCreateDriverContext();
         ADBProtocolBase protocol = createProtocol(host, port, properties, 
driverContext);
+        getLogger().info("Created Analytics Protocol " + protocol);
         try {
+            getLogger().info("Fetching server version for protocol " + 
protocol);
             String serverVersion = protocol.connect();
+            getLogger().log(Level.INFO, "Fetched server version {0} for 
protocol {1}",
+                    new Object[] { serverVersion, protocol });
             ADBProductVersion databaseVersion = 
protocol.parseDatabaseVersion(serverVersion);
             checkDatabaseVersion(properties, databaseVersion);
             return createConnection(protocol, url, databaseVersion, 
dataverseCanonicalName, properties, warning);
@@ -178,6 +181,7 @@
                 protocol.close();
             } catch (SQLException e2) {
                 e.addSuppressed(e2);
+                getLogger().info("Error fetching server version " + 
e.getMessage());
             }
             throw e;
         }
diff --git 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBMetaStatement.java
 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBMetaStatement.java
index 4525062..9477766 100644
--- 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBMetaStatement.java
+++ 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBMetaStatement.java
@@ -100,6 +100,7 @@
     protected ADBResultSet executeGetSchemasQuery(String catalog, String 
schemaPattern, String tag)
             throws SQLException {
         checkClosed();
+        getLogger().info(" Running get schemas query");

         StringBuilder sql = new StringBuilder(512);
         populateQueryProlog(sql, "JDBC-GetSchemas-" + tag);
@@ -136,6 +137,7 @@
     protected ADBResultSet executeGetTablesQuery(String catalog, String 
schemaPattern, String tableNamePattern,
             String[] types) throws SQLException {
         checkClosed();
+        getLogger().info(" Running get tables query");

         String datasetTermTabular = getDatasetTerm(true);
         String datasetTermNonTabular = getDatasetTerm(false);
@@ -207,6 +209,7 @@
     protected ADBResultSet executeGetColumnsQuery(String catalog, String 
schemaPattern, String tableNamePattern,
             String columnNamePattern) throws SQLException {
         checkClosed();
+        getLogger().info(" Running get columns query");

         StringBuilder sql = new StringBuilder(2048);
         populateQueryProlog(sql, "JDBC-GetColumns");
@@ -296,6 +299,7 @@

     protected ADBResultSet executeGetPrimaryKeysQuery(String catalog, String 
schema, String table) throws SQLException {
         checkClosed();
+        getLogger().info(" Running get primary keys query");

         StringBuilder sql = new StringBuilder(1024);
         populateQueryProlog(sql, "JDBC-GetPrimaryKeys");
@@ -374,6 +378,8 @@

     protected ADBResultSet executeGetImportedExportedKeysQuery(String comment, 
String pkCatalog, String pkSchema,
             String pkTable, String fkCatalog, String fkSchema, String fkTable, 
boolean orderByFk) throws SQLException {
+
+        getLogger().info("Running Imported Exported Keys Query");
         StringBuilder sql = new StringBuilder(2048);
         populateQueryProlog(sql, comment);

diff --git 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBPreparedStatement.java
 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBPreparedStatement.java
index ff28790..45cd2e4 100644
--- 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBPreparedStatement.java
+++ 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBPreparedStatement.java
@@ -40,6 +40,7 @@
 import java.util.Calendar;
 import java.util.Collections;
 import java.util.List;
+import java.util.logging.Level;

 public class ADBPreparedStatement extends ADBStatement implements 
PreparedStatement {

@@ -51,6 +52,7 @@

     public ADBPreparedStatement(ADBConnection connection, String sql) throws 
SQLException {
         super(connection);
+        getLogger().log(Level.INFO, "Creating new prepared statement {0} for 
query {1}", new Object[] { this, sql });
         ADBProtocolBase.SubmitStatementOptions stmtOptions = 
createSubmitStatementOptions();
         stmtOptions.compileOnly = true;
         stmtOptions.timeoutSeconds = 0; /* TODO:timeout */
@@ -62,6 +64,7 @@
         this.sql = sql;
         this.args = Arrays.asList(new Object[parameterCount]);
         this.resultColumns = columns;
+        getLogger().info("Successfully created prepared statement " + this);
     }

     // Metadata
diff --git 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBProtocolBase.java
 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBProtocolBase.java
index 3186aa0..6732539 100644
--- 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBProtocolBase.java
+++ 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBProtocolBase.java
@@ -32,6 +32,7 @@
 import java.util.Objects;
 import java.util.UUID;
 import java.util.function.Function;
+import java.util.logging.Level;
 import java.util.logging.Logger;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -120,6 +121,7 @@

     public ArrayNode fetchExplainOnlyResult(QueryServiceResponse response, 
Function<String, String> lineConverter)
             throws SQLException {
+        getLogger().info("Called fetchExplainOnlyResult");
         if (response.results == null || response.results.isEmpty()) {
             throw getErrorReporter().errorInProtocol();
         }
@@ -133,6 +135,7 @@
             while ((line = br.readLine()) != null) {
                 arrayNode.addObject().put(EXPLAIN_ONLY_RESULT_COLUMN_NAME, 
lineConverter.apply(line));
             }
+            getLogger().info("Successfully completed fetchExplainOnlyResult");
             return arrayNode;
         } catch (IOException e) {
             throw getErrorReporter().errorInResultHandling(e);
@@ -156,6 +159,7 @@
     }

     public SQLWarning createSQLWarning(List<QueryServiceResponse.Message> 
warnings) {
+        getLogger().info("Generating SQL Warning ");
         SQLWarning sqlWarning = null;
         ListIterator<QueryServiceResponse.Message> i = 
warnings.listIterator(warnings.size());
         while (i.hasPrevious()) {
@@ -166,10 +170,12 @@
             }
             sqlWarning = sw;
         }
+        getLogger().info("SQL Warning generated.");
         return sqlWarning;
     }

     public List<ADBColumn> getColumns(QueryServiceResponse response) throws 
SQLException {
+        getLogger().info("Fetching columns from query response " + 
response.handle);
         if (isExplainOnly(response)) {
             return Collections.singletonList(new 
ADBColumn(EXPLAIN_ONLY_RESULT_COLUMN_NAME, ADBDatatype.STRING, false));
         }
@@ -198,6 +204,7 @@
             }
             result.add(new ADBColumn(columnName, columnType, optional));
         }
+        getLogger().log(Level.INFO, "Fetched {0} columns from query response 
", new Object[] { result.size() });
         return result;
     }

diff --git 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBResultSet.java
 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBResultSet.java
index 2af4585..4ae8c96 100644
--- 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBResultSet.java
+++ 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBResultSet.java
@@ -47,6 +47,7 @@
 import java.util.Map;
 import java.util.Objects;
 import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.logging.Level;

 import com.fasterxml.jackson.core.JsonParser;
 import com.fasterxml.jackson.core.JsonProcessingException;
@@ -95,6 +96,7 @@
     }

     void closeImpl(boolean notifyStatement) throws SQLException {
+        metadata.statement.getLogger().info("Closing result set for " + 
metadata.statement);
         boolean wasClosed = closed.getAndSet(true);
         if (wasClosed) {
             return;
@@ -102,12 +104,15 @@
         try {
             rowParser.close();
         } catch (IOException e) {
+            metadata.statement.getLogger().info("Closing row parser for " + 
metadata.statement);
             throw getErrorReporter().errorClosingResource(e);
         } finally {
             if (notifyStatement) {
                 metadata.statement.deregisterResultSet(this);
             }
         }
+        metadata.statement.getLogger().log(Level.INFO, "Closed result set {0} 
for statement {1}",
+                new Object[] { this, metadata.statement });
     }

     @Override
@@ -141,6 +146,7 @@
                     if (token != JsonToken.START_ARRAY) {
                         throw 
getErrorReporter().errorInProtocol(String.valueOf(token));
                     }
+                    metadata.statement.getLogger().info("Reading first row for 
result set " + this);
                     initRowStore();
                     state = ST_NEXT;
                     // fall thru to ST_NEXT
@@ -149,6 +155,7 @@
                     switch (token) {
                         case START_OBJECT:
                             if (maxRows > 0 && rowNumber == maxRows) {
+                                metadata.statement.getLogger().info("Max rows 
read for result set " + this);
                                 state = ST_AFTER_LAST;
                                 return false;
                             } else {
@@ -163,6 +170,7 @@
                             throw 
getErrorReporter().errorInProtocol(String.valueOf(token));
                     }
                 case ST_AFTER_LAST:
+                    metadata.statement.getLogger().info("Read last row for 
result set " + this);
                     return false;
                 default:
                     throw new IllegalStateException(String.valueOf(state));
@@ -186,6 +194,7 @@
         rowStore.reset();
         columnIndexOfLatestGet = -1;
         if (rowParser.currentToken() != JsonToken.START_OBJECT) {
+            metadata.statement.getLogger().info("Error reading row for result 
set " + this);
             throw new IllegalStateException();
         }
         try {
diff --git 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBStatement.java
 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBStatement.java
index c024f21..2a10680 100644
--- 
a/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBStatement.java
+++ 
b/asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBStatement.java
@@ -99,6 +99,8 @@

     public ADBStatement(ADBConnection connection) {
         this.connection = Objects.requireNonNull(connection);
+        getLogger().log(Level.INFO, "Created new ADBStatement object {0} for 
url {1}",
+                new Object[] { this, connection.url });
         this.resultSetsWithResources = new ConcurrentLinkedQueue<>();
         this.resultSetsWithoutResources = new ConcurrentLinkedQueue<>();
         resetExecutionId();
@@ -110,6 +112,7 @@
     }

     protected void closeImpl(boolean closeResultSets, boolean 
notifyConnection) throws SQLException {
+        getLogger().info("Closing statement" + this);
         boolean wasClosed = closed.getAndSet(true);
         if (wasClosed) {
             return;
@@ -159,6 +162,8 @@
     protected ADBResultSet executeQueryImpl(String sql, List<?> args) throws 
SQLException {
         // note: we're not assigning executeResponse field at this method
         try {
+            getLogger().log(Level.INFO, "Executing query with timeout {0} for 
prepared statement {1} for query {2}",
+                    new Object[] { queryTimeoutSeconds, this, sql });
             ADBProtocolBase.SubmitStatementOptions stmtOptions = 
createSubmitStatementOptions();
             stmtOptions.executionId = executionId;
             stmtOptions.forceReadOnly = true;
@@ -170,6 +175,8 @@
             }
             warnings = connection.protocol.getWarningIfExists(response);
             updateCount = -1;
+            getLogger().log(Level.INFO, "Successfully executed query for 
prepared statement {0}, started fetch results",
+                    new Object[] { this });
             return fetchResultSet(response, stmtOptions);
         } finally {
             resetExecutionId();
@@ -220,6 +227,8 @@

     protected int executeUpdateImpl(String sql, List<Object> args) throws 
SQLException {
         try {
+            getLogger().log(Level.INFO, "Executing update with timeout {0} for 
statement {1} for query {2}",
+                    new Object[] { queryTimeoutSeconds, this, sql });
             ADBProtocolBase.SubmitStatementOptions stmtOptions = 
createSubmitStatementOptions();
             stmtOptions.executionId = executionId;
             ADBProtocolBase.QueryServiceResponse response = 
connection.protocol.submitStatement(sql, args, stmtOptions);
@@ -231,6 +240,7 @@
             }
             warnings = connection.protocol.getWarningIfExists(response);
             updateCount = connection.protocol.getUpdateCount(response);
+            getLogger().log(Level.INFO, "Successful update for statement {0}", 
new Object[] { this });
             return updateCount;
         } finally {
             resetExecutionId();
@@ -260,6 +270,8 @@

     protected boolean executeImpl(String sql, List<Object> args) throws 
SQLException {
         try {
+            getLogger().log(Level.INFO, "Executing query with timeout {0} for 
statement {1} for query {2}",
+                    new Object[] { queryTimeoutSeconds, this, sql });
             ADBProtocolBase.SubmitStatementOptions stmtOptions = 
createSubmitStatementOptions();
             stmtOptions.executionId = executionId;
             ADBProtocolBase.QueryServiceResponse response = 
connection.protocol.submitStatement(sql, args, stmtOptions);
@@ -267,6 +279,8 @@
             executeStmtOptions = stmtOptions;
             boolean isQuery = connection.protocol.isStatementCategory(response,
                     
ADBProtocolBase.QueryServiceResponse.StatementCategory.QUERY);
+            getLogger().log(Level.INFO, "Successfully executed query for 
prepared statement {0}",
+                    new Object[] { this });
             if (isQuery) {
                 updateCount = -1;
                 executeResponse = response;
@@ -309,6 +323,8 @@

     private void resetExecutionId() {
         executionId = UUID.randomUUID();
+        getLogger().log(Level.INFO, "Setting executionId/client_context_id {0} 
for statement {1}",
+                new Object[] { executionId, this });
     }

     protected ADBProtocolBase.SubmitStatementOptions 
createSubmitStatementOptions() {
@@ -345,15 +361,18 @@

     @Override
     public ADBResultSet getResultSet() throws SQLException {
+        getLogger().info("Get result set for statement " + this);
         checkClosed();
         ADBProtocolBase.QueryServiceResponse response = executeResponse;
         if (response == null) {
+            getLogger().info("Null response for statement " + this);
             return null;
         }
         ADBResultSet rs = fetchResultSet(response, executeStmtOptions);
         executeResultSet = rs;
         executeResponse = null;
         executeStmtOptions = null;
+        getLogger().info("Successfully fetched ADB result set for statement" + 
this);
         return rs;
     }

@@ -364,10 +383,12 @@

     @Override
     public boolean getMoreResults(int current) throws SQLException {
+        getLogger().info("Get more result sets for statement" + this);
         checkClosed();
         ADBResultSet rs = executeResultSet;
         executeResultSet = null;
         if (rs != null && current != Statement.KEEP_CURRENT_RESULT) {
+            getLogger().info("Get more result sets called on non empty result 
set for statement" + this);
             rs.closeImpl(true);
         }
         return false;
@@ -412,6 +433,7 @@

     protected ADBResultSet fetchResultSet(ADBProtocolBase.QueryServiceResponse 
execResponse,
             ADBProtocolBase.SubmitStatementOptions stmtOptions) throws 
SQLException {
+        getLogger().log(Level.INFO, "Fetching ADBResultSet for statement {0}", 
new Object[] { this });
         List<ADBColumn> columns = connection.protocol.getColumns(execResponse);
         if (getLogger().isLoggable(Level.FINER)) {
             getLogger().log(Level.FINE, "result schema " + columns);
@@ -420,10 +442,13 @@
             AbstractValueSerializer stringSer = 
getADMFormatSerializer(String.class);
             ArrayNode explainResult =
                     connection.protocol.fetchExplainOnlyResult(execResponse, 
stringSer::serializeToString);
+            getLogger().log(Level.INFO, "Created Explain Only ADBResultSet for 
statement {0}", new Object[] { this });
             return createSystemResultSet(columns, explainResult);
         } else {
             JsonParser rowParser = 
connection.protocol.fetchResult(execResponse, stmtOptions);
-            return createResultSetImpl(columns, rowParser, true, maxRows);
+            ADBResultSet resultSet = createResultSetImpl(columns, rowParser, 
true, maxRows);
+            getLogger().log(Level.INFO, "Created ADBResultSet {0} for 
statement {1}", new Object[] { resultSet, this });
+            return resultSet;
         }
     }

@@ -471,16 +496,19 @@
                 if (getLogger().isLoggable(Level.FINE)) {
                     getLogger().log(Level.FINE, e.getMessage(), e);
                 }
+                getLogger().log(Level.INFO, e.getMessage());
             }
         }
     }

     protected void closeRegisteredResultSets() throws SQLException {
+        getLogger().info("Closing result sets for statement " + this);
         SQLException err = null;
         try {
             closedRegisteredResultSetsImpl(resultSetsWithResources, 
Function.identity());
         } catch (SQLException e) {
             err = e;
+            getLogger().info("Error closing result sets for statement " + 
e.getMessage());
         }
         try {
             closedRegisteredResultSetsImpl(resultSetsWithoutResources, 
Reference::get);
@@ -489,6 +517,7 @@
                 e.addSuppressed(err);
             }
             err = e;
+            getLogger().info("Error closing result sets for statement " + 
e.getMessage());
         }
         if (err != null) {
             throw err;
@@ -503,12 +532,14 @@
             ADBResultSet rs = rsAccessor.apply(item);
             if (rs != null) {
                 try {
+                    getLogger().log(Level.INFO, "Closing result set {0} for 
statement {1}", new Object[] { rs, this });
                     rs.closeImpl(false);
                 } catch (SQLException e) {
                     if (err != null) {
                         e.addSuppressed(err);
                     }
                     err = e;
+                    getLogger().info("Error closing result sets for statement 
" + e.getMessage());
                 }
             }
         }
@@ -525,6 +556,7 @@

     @Override
     public void setLargeMaxRows(long maxRows) throws SQLException {
+        getLogger().log(Level.INFO, "Setting large max rows {0} for {1}", new 
Object[] { maxRows, this });
         checkClosed();
         if (maxRows < 0) {
             throw 
getErrorReporter().errorParameterValueNotSupported("maxRows");
@@ -534,6 +566,7 @@

     @Override
     public void setMaxRows(int maxRows) throws SQLException {
+        getLogger().log(Level.INFO, "Setting max rows {0} for {1}", new 
Object[] { maxRows, this });
         setLargeMaxRows(maxRows);
     }


--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb-clients/+/17716
To unsubscribe, or for help writing mail filters, visit 
https://asterix-gerrit.ics.uci.edu/settings

Gerrit-Project: asterixdb-clients
Gerrit-Branch: master
Gerrit-Change-Id: Ib10fc02faf1cf62bbe62dac24c905ef72990f3b1
Gerrit-Change-Number: 17716
Gerrit-PatchSet: 1
Gerrit-Owner: Peeyush Gupta <[email protected]>
Gerrit-MessageType: newchange

Reply via email to