You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by rv...@apache.org on 2013/06/03 22:09:17 UTC
svn commit: r1489143 - in
/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc:
connections/ results/ statements/
Author: rvesse
Date: Mon Jun 3 20:09:17 2013
New Revision: 1489143
URL: http://svn.apache.org/r1489143
Log:
Add more logging statements where appropriate
Modified:
jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/connections/JenaConnection.java
jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/AskResults.java
jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/QueryExecutionResults.java
jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetPreparedStatement.java
jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetStatement.java
jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/JenaStatement.java
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/connections/JenaConnection.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/connections/JenaConnection.java?rev=1489143&r1=1489142&r2=1489143&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/connections/JenaConnection.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/connections/JenaConnection.java Mon Jun 3 20:09:17 2013
@@ -655,7 +655,7 @@ public abstract class JenaConnection imp
* Warning
*/
protected void setWarning(SQLWarning warning) {
- LOGGER.warn(warning.getMessage(), warning);
+ LOGGER.warn("SQL Warning was issued", warning);
if (this.warnings == null) {
this.warnings = warning;
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/AskResults.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/AskResults.java?rev=1489143&r1=1489142&r2=1489143&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/AskResults.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/AskResults.java Mon Jun 3 20:09:17 2013
@@ -24,6 +24,8 @@ import java.sql.SQLException;
import java.sql.SQLFeatureNotSupportedException;
import org.apache.jena.jdbc.results.metadata.AskResultsMetadata;
import org.apache.jena.jdbc.statements.JenaStatement;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import com.hp.hpl.jena.datatypes.xsd.XSDDatatype;
import com.hp.hpl.jena.graph.Node;
@@ -34,6 +36,7 @@ import com.hp.hpl.jena.graph.NodeFactory
*
*/
public class AskResults extends JenaResultSet {
+ private static final Logger LOGGER = LoggerFactory.getLogger(AskResults.class);
private boolean result, closed = false;
private int currRow = 0;
@@ -82,6 +85,7 @@ public class AskResults extends JenaResu
if (this.closed) return;
this.closed = true;
if (this.needsCommit) {
+ LOGGER.info("Result Set associated with an auto-committing transaction, performing a commit now");
this.getStatement().getConnection().commit();
}
}
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/QueryExecutionResults.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/QueryExecutionResults.java?rev=1489143&r1=1489142&r2=1489143&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/QueryExecutionResults.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/QueryExecutionResults.java Mon Jun 3 20:09:17 2013
@@ -20,6 +20,8 @@ package org.apache.jena.jdbc.results;
import java.sql.SQLException;
import org.apache.jena.jdbc.statements.JenaStatement;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import com.hp.hpl.jena.query.QueryExecution;
@@ -28,6 +30,8 @@ import com.hp.hpl.jena.query.QueryExecut
*
*/
public abstract class QueryExecutionResults extends JenaResultSet {
+
+ private static final Logger LOGGER = LoggerFactory.getLogger(QueryExecutionResults.class);
private QueryExecution qe;
private boolean commit = false;
@@ -56,12 +60,14 @@ public abstract class QueryExecutionResu
// Close the query execution
this.qe.close();
} catch (Exception e) {
+ LOGGER.error("Unexpected error closing underlying Jena query execution", e);
throw new SQLException("Unexpected error closing the query execution", e);
} finally {
this.qe = null;
// Commit if necessary
if (this.commit) {
+ LOGGER.info("Result Set associated with an auto-committing transaction, performing a commit now");
this.getStatement().getConnection().commit();
}
}
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetPreparedStatement.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetPreparedStatement.java?rev=1489143&r1=1489142&r2=1489143&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetPreparedStatement.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetPreparedStatement.java Mon Jun 3 20:09:17 2013
@@ -21,6 +21,8 @@ package org.apache.jena.jdbc.statements;
import java.sql.SQLException;
import org.apache.jena.jdbc.connections.DatasetConnection;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import com.hp.hpl.jena.query.Dataset;
import com.hp.hpl.jena.query.Query;
@@ -37,6 +39,7 @@ import com.hp.hpl.jena.update.UpdateRequ
*
*/
public class DatasetPreparedStatement extends JenaPreparedStatement {
+ private static final Logger LOGGER = LoggerFactory.getLogger(DatasetPreparedStatement.class);
private DatasetConnection dsConn;
@@ -104,19 +107,39 @@ public class DatasetPreparedStatement ex
protected void beginTransaction(ReadWrite type) throws SQLException {
try {
this.dsConn.begin(type);
+ } catch (SQLException e) {
+ // Throw as-is
+ throw e;
} catch (Exception e) {
+ LOGGER.error("Unexpected error starting a transaction", e);
throw new SQLException("Unexpected error starting a transaction", e);
}
}
@Override
protected void commitTransaction() throws SQLException {
- this.dsConn.commit();
+ try {
+ this.dsConn.commit();
+ } catch (SQLException e) {
+ // Throw as-is
+ throw e;
+ } catch (Exception e) {
+ LOGGER.error("Unexpected error committing a transaction", e);
+ throw new SQLException("Unexpected error committing a transaction", e);
+ }
}
@Override
protected void rollbackTransaction() throws SQLException {
+ try {
this.dsConn.rollback();
+ } catch (SQLException e) {
+ // Throw as-is
+ throw e;
+ } catch (Exception e) {
+ LOGGER.error("Unexpected error rolling back a transaction", e);
+ throw new SQLException("Unexpected error rolling back a transaction", e);
+ }
}
@Override
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetStatement.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetStatement.java?rev=1489143&r1=1489142&r2=1489143&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetStatement.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/DatasetStatement.java Mon Jun 3 20:09:17 2013
@@ -21,6 +21,8 @@ package org.apache.jena.jdbc.statements;
import java.sql.SQLException;
import org.apache.jena.jdbc.connections.DatasetConnection;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import com.hp.hpl.jena.query.Dataset;
import com.hp.hpl.jena.query.Query;
@@ -37,6 +39,8 @@ import com.hp.hpl.jena.update.UpdateRequ
*
*/
public class DatasetStatement extends JenaStatement {
+
+ private static final Logger LOGGER = LoggerFactory.getLogger(DatasetStatement.class);
private DatasetConnection dsConn;
@@ -67,7 +71,7 @@ public class DatasetStatement extends Je
* @param holdability
* Result Set holdability
* @param autoCommit
- * Auto commit behaviour
+ * Auto commit behavior
* @param transactionLevel
* Transaction level
* @throws SQLException
@@ -100,19 +104,39 @@ public class DatasetStatement extends Je
protected void beginTransaction(ReadWrite type) throws SQLException {
try {
this.dsConn.begin(type);
+ } catch (SQLException e) {
+ // Throw as-is
+ throw e;
} catch (Exception e) {
+ LOGGER.error("Unexpected error starting a transaction", e);
throw new SQLException("Unexpected error starting a transaction", e);
}
}
@Override
protected void commitTransaction() throws SQLException {
- this.dsConn.commit();
+ try {
+ this.dsConn.commit();
+ } catch (SQLException e) {
+ // Throw as-is
+ throw e;
+ } catch (Exception e) {
+ LOGGER.error("Unexpected error committing a transaction", e);
+ throw new SQLException("Unexpected error committing a transaction", e);
+ }
}
@Override
protected void rollbackTransaction() throws SQLException {
+ try {
this.dsConn.rollback();
+ } catch (SQLException e) {
+ // Throw as-is
+ throw e;
+ } catch (Exception e) {
+ LOGGER.error("Unexpected error rolling back a transaction", e);
+ throw new SQLException("Unexpected error rolling back a transaction", e);
+ }
}
@Override
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/JenaStatement.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/JenaStatement.java?rev=1489143&r1=1489142&r2=1489143&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/JenaStatement.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/statements/JenaStatement.java Mon Jun 3 20:09:17 2013
@@ -181,19 +181,30 @@ public abstract class JenaStatement impl
return;
LOGGER.info("Closing statement");
this.closed = true;
+ // Close current result set (if any)
if (this.currResults != null) {
this.currResults.close();
this.currResults = null;
}
- while (!this.results.isEmpty()) {
- ResultSet rset = this.results.poll();
- if (rset != null)
+ // Close any remaining open results
+ if (this.results.size() > 0 || this.openResults.size() > 0) {
+ LOGGER.info("Closing " + (this.results.size() + this.openResults.size()) + " open result sets");
+
+ // Queue results i.e. stuff resulting from a query that produced
+ // multiple result sets or executeBatch() calls
+ while (!this.results.isEmpty()) {
+ ResultSet rset = this.results.poll();
+ if (rset != null)
+ rset.close();
+ }
+ // Close open result sets i.e. stuff left around depending on
+ // statement correction
+ for (ResultSet rset : this.openResults) {
rset.close();
+ }
+ this.openResults.clear();
+ LOGGER.info("All open result sets were closed");
}
- for (ResultSet rset : this.openResults) {
- rset.close();
- }
- this.openResults.clear();
LOGGER.info("Statement was closed");
}
@@ -338,7 +349,7 @@ public abstract class JenaStatement impl
} catch (SQLException e) {
if (needsCommit) {
// When auto-committing and query fails roll back immediately
- LOGGER.warn("Rolling back failed query transaction");
+ LOGGER.warn("Rolling back failed query transaction", e);
this.rollbackTransaction();
}
throw e;
@@ -408,7 +419,7 @@ public abstract class JenaStatement impl
return 0;
} catch (SQLException e) {
if (needsCommit) {
- LOGGER.warn("Rolling back failed update transaction");
+ LOGGER.warn("Rolling back failed update transaction", e);
this.rollbackTransaction();
}
throw e;