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]

Reply via email to