You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by un...@apache.org on 2004/07/05 15:39:38 UTC

cvs commit: jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms PostgresRDBMSAdapter.java

unico       2004/07/05 06:39:38

  Modified:    src/stores/org/apache/slide/store/impl/rdbms
                        PostgresRDBMSAdapter.java
  Log:
  prevent possible NPE during error handling
  
  Revision  Changes    Path
  1.8       +32 -27    jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/PostgresRDBMSAdapter.java
  
  Index: PostgresRDBMSAdapter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/stores/org/apache/slide/store/impl/rdbms/PostgresRDBMSAdapter.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- PostgresRDBMSAdapter.java	8 Jun 2004 07:52:35 -0000	1.7
  +++ PostgresRDBMSAdapter.java	5 Jul 2004 13:39:38 -0000	1.8
  @@ -315,30 +315,35 @@
   		 */
   
   		String sqlstate = e.getSQLState();
  +		
  +        if (sqlstate != null) {
  +            if (sqlstate.startsWith("23")) {
  +                getLogger().log(e.getErrorCode() + ": Deadlock resolved on " + uri,
  +                    LOG_CHANNEL, Logger.WARNING);
  +                return new ServiceAccessException(service, new ConflictException(uri));
  +            } else if (sqlstate.startsWith("40")) {
  +                getLogger().log(
  +                    e.getErrorCode() + ": Deadlock resolved on " + uri,
  +                    LOG_CHANNEL,
  +                    Logger.WARNING);
  +                return new ServiceAccessException(service, new ConflictException(uri));
  +            } else {
  +                getLogger().log(
  +                    "SQL error "
  +                        + e.getErrorCode()
  +                        + " on "
  +                        + uri
  +                        + ": "
  +                        + e.getMessage(),
  +                    LOG_CHANNEL,
  +                    Logger.ERROR);
   
  -		if (sqlstate.startsWith("23")) {
  -			getLogger().log(e.getErrorCode() + ": Deadlock resolved on " + uri,
  -				LOG_CHANNEL, Logger.WARNING);
  -			return new ServiceAccessException(service, new ConflictException(uri));
  -		} else if (sqlstate.startsWith("40")) {
  -			getLogger().log(
  -				e.getErrorCode() + ": Deadlock resolved on " + uri,
  -				LOG_CHANNEL,
  -				Logger.WARNING);
  -			return new ServiceAccessException(service, new ConflictException(uri));
  -		} else {
  -			getLogger().log(
  -				"SQL error "
  -					+ e.getErrorCode()
  -					+ " on "
  -					+ uri
  -					+ ": "
  -					+ e.getMessage(),
  -				LOG_CHANNEL,
  -				Logger.ERROR);
  -
  -			return new ServiceAccessException(service, e);
  -		}
  +                return new ServiceAccessException(service, e);
  +            }
  +        }
  +        else {
  +            return super.createException(e, uri);
  +        }
   	}
   
       public boolean isSequenceSupported(Connection conn) {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org