ozeigermann 2004/12/13 08:06:39
Modified: src/stores/org/apache/slide/store/impl/rdbms
DB2RDBMSAdapter.java
Log:
Added 911 exception that
"signifies table access conflict/deadlock"
as reported by Warwick.
Revision Changes Path
1.9 +22 -5
jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/DB2RDBMSAdapter.java
Index: DB2RDBMSAdapter.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/DB2RDBMSAdapter.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- DB2RDBMSAdapter.java 7 Dec 2004 21:07:22 -0000 1.8
+++ DB2RDBMSAdapter.java 13 Dec 2004 16:06:39 -0000 1.9
@@ -27,6 +27,7 @@
import org.apache.slide.content.*;
import org.apache.slide.lock.NodeLock;
import org.apache.slide.security.NodePermission;
+import org.apache.slide.store.ConcurrencyConflictException;
import org.apache.slide.structure.LinkNode;
import org.apache.slide.structure.ObjectNode;
import org.apache.slide.structure.ObjectNotFoundException;
@@ -36,7 +37,8 @@
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
-import java.util.Enumeration;;
+import java.util.Enumeration;
+;
/**
* Adapter for DB2 8.
@@ -542,5 +544,20 @@
protected String convertRevisionNumberToComparable(String revisioNumber) {
return revisioNumber;
}
+
+ protected ServiceAccessException createException(SQLException e, String
uri) {
+
+ switch (e.getErrorCode()) {
+ case 911 : // thread was deadlock victim
+ getLogger().log(e.getErrorCode() + ": Deadlock resolved on " +
uri, LOG_CHANNEL, Logger.WARNING);
+// return new ServiceAccessException(this, new
ConflictException(uri));
+ throw new ConcurrencyConflictException(e, uri);
+
+ default :
+ return super.createException(e, uri);
+ }
+ }
+
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]