mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
Merge pull request #771 from pathfinder-name/branches/oracle_savepoint
解决oracle下回滚savepoint后输出日志时抛出异常
This commit is contained in:
@@ -356,7 +356,7 @@ public abstract class LogFilter extends FilterEventAdapter implements LogFilterM
|
||||
Savepoint savepoint = chain.connection_setSavepoint(connection);
|
||||
|
||||
if (isConnectionLogEnabled()) {
|
||||
connectionLog("{conn " + connection.getId() + "} setSavepoint-" + savepoint.getSavepointId());
|
||||
connectionLog("{conn " + connection.getId() + "} setSavepoint-" + savepointToString(savepoint));
|
||||
}
|
||||
|
||||
return savepoint;
|
||||
@@ -389,7 +389,7 @@ public abstract class LogFilter extends FilterEventAdapter implements LogFilterM
|
||||
super.connection_rollback(chain, connection, savePoint);
|
||||
|
||||
if (connectionRollbackAfterLogEnable && isConnectionLogEnabled()) {
|
||||
connectionLog("{conn " + connection.getId() + "} rollback -> " + savePoint.getSavepointId());
|
||||
connectionLog("{conn " + connection.getId() + "} rollback -> " + savepointToString(savePoint));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -859,4 +859,18 @@ public abstract class LogFilter extends FilterEventAdapter implements LogFilterM
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
protected String savepointToString(Savepoint savePoint) {
|
||||
String savePointString = null;
|
||||
try{
|
||||
savePointString = savePoint.getSavepointName();
|
||||
} catch (SQLException e) {
|
||||
try {
|
||||
savePointString = String.valueOf(savePoint.getSavepointId());
|
||||
} catch (SQLException e1) {
|
||||
savePointString = savePoint.toString();
|
||||
}
|
||||
}
|
||||
return savePointString;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user