Public Member Functions | |
long | getRecoveringNb () |
abstract void | logRequest (AbstractWriteRequest request) throws SQLException |
abstract void | logRequest (StoredProcedure proc, boolean isRead) throws SQLException |
abstract long | getLastTransactionId () throws SQLException |
abstract void | begin (TransactionMarkerMetaData tm) throws SQLException |
abstract void | abort (TransactionMarkerMetaData tm) throws SQLException |
abstract void | commit (TransactionMarkerMetaData tm) throws SQLException |
abstract void | rollback (TransactionMarkerMetaData tm) throws SQLException |
synchronized void | beginRecovery () |
abstract void | cleanRecoveryLog () throws SQLException |
synchronized void | endRecovery () |
synchronized boolean | isRecovering () |
abstract RecoveryTask | recoverNextRequest (long previousRequestId) throws SQLException |
abstract BackendRecoveryInfo | getBackendRecoveryInfo (String databaseName, String backendName) throws SQLException |
abstract ArrayList | getCheckpointNames () throws SQLException |
abstract long | getCheckpointRequestId (String checkpointName) throws SQLException |
abstract void | removeCheckpoint (String checkpointName) throws SQLException |
abstract void | storeBackendRecoveryInfo (String databaseName, BackendRecoveryInfo backendRecoveryInfo) throws SQLException |
abstract void | storeCheckpoint (String checkpointName) throws SQLException |
abstract void | storeCheckpoint (String checkpointName, long requestId) throws SQLException |
String | getXml () |
abstract String | getXmlImpl () |
abstract String[][] | getData () |
Protected Member Functions | |
AbstractRecoveryLog (Class mBeanInterface) throws NotCompliantMBeanException | |
Static Package Attributes | |
Trace | logger |
Definition at line 50 of file AbstractRecoveryLog.java.
|
Generic constructor.
Definition at line 67 of file AbstractRecoveryLog.java. 00069 { 00070 super(mBeanInterface); 00071 }
|
|
Log a transaction abort. This is used only for transaction that were started but where no request was executed, which is in fact an empty transaction. The underlying implementation might safely discard the corresponding begin from the log as an optimization.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Log the beginning of a new transaction.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. Referenced by org.objectweb.cjdbc.controller.requestmanager.distributed.DistributedRequestManager.begin(), and org.objectweb.cjdbc.controller.requestmanager.distributed.DistributedRequestManager.lazyTransactionStart(). |
|
Notify the recovery log that a recovery process has started. Definition at line 157 of file AbstractRecoveryLog.java. Referenced by org.objectweb.cjdbc.controller.recoverylog.JDBCRecoverThread.run(). 00159 { 00160 recoveringNb++; 00161 }
|
|
Possibly clean the recovery log after all recovery process are done.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. Referenced by org.objectweb.cjdbc.controller.recoverylog.AbstractRecoveryLog.endRecovery(). |
|
Log a transaction commit.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Notify the recovery log that a recovery process has finished. If this is the last recovery process to finish, the cleanRecoveryLog method is called
Definition at line 176 of file AbstractRecoveryLog.java. References org.objectweb.cjdbc.controller.recoverylog.AbstractRecoveryLog.cleanRecoveryLog(). Referenced by org.objectweb.cjdbc.controller.recoverylog.JDBCRecoverThread.run(). 00177 { 00178 recoveringNb--; 00179 if (recoveringNb == 0) 00180 { 00181 try 00182 { 00183 cleanRecoveryLog(); 00184 } 00185 catch (SQLException e) 00186 { 00187 logger.error(Translate.get("recovery.cleaning.failed", e)); 00188 } 00189 } 00190 }
|
|
Retrieve recovery information on a backend. This includes, the last known state of the backend, and the last known checkpoint
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. Referenced by org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabase.enableAllBackendsFromCheckpoint(). |
|
Returns an array of names of all the checkpoint available in the recovery log
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. Referenced by org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabase.viewCheckpointNames(). |
|
Get the request id corresponding to a given checkpoint. This is the first step in a recovery process. Following steps consist in calling recoverNextRequest.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. Referenced by org.objectweb.cjdbc.controller.recoverylog.JDBCRecoverThread.run(). |
|
Allow to get the content of the recovery log for viewing
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. Referenced by org.objectweb.cjdbc.controller.monitoring.datacollector.DataCollector.retrieveRecoveryLogData(). |
|
Get the id of the last transaction logged in the recovery log.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Returns the recoveringNb value.
Definition at line 78 of file AbstractRecoveryLog.java. 00079 {
00080 return recoveringNb;
00081 }
|
|
Get xml information of the current recovery load in the system.
Definition at line 300 of file AbstractRecoveryLog.java. References org.objectweb.cjdbc.controller.recoverylog.AbstractRecoveryLog.getXmlImpl(), and org.objectweb.cjdbc.controller.recoverylog.BackendRecoveryInfo.toString(). 00302 { 00303 StringBuffer info = new StringBuffer(); 00304 info.append("<" + DatabasesXmlTags.ELT_RecoveryLog + ">"); 00305 info.append(getXmlImpl()); 00306 info.append("</" + DatabasesXmlTags.ELT_RecoveryLog + ">"); 00307 return info.toString(); 00308 }
|
|
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. Referenced by org.objectweb.cjdbc.controller.recoverylog.AbstractRecoveryLog.getXml(). |
|
Returns
Definition at line 198 of file AbstractRecoveryLog.java. 00199 {
00200 return recoveringNb > 0;
00201 }
|
|
Log a call to a stored procedure.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Log a write request.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Get the next request (begin/commit/rollback or WriteRequest) from the recovery log given the id of the previously recovered request. The id of the request before the first one to recover is given by getCheckpointRequestId.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Remove a checkpoint from the recovery. This is useful for recovery maintenant
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Log a transaction rollback.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Store the state of the backend in the recovery log
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. Referenced by org.objectweb.cjdbc.controller.virtualdatabase.VirtualDatabase.setBackendLastKnownCheckpoint(). |
|
Store a Checkpoint using the given request id.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Store a Checkpoint using the current log state.
Implemented in org.objectweb.cjdbc.controller.recoverylog.JDBCRecoveryLog. |
|
Initial value: Trace
.getLogger("org.objectweb.cjdbc.controller.recoverylog")
Definition at line 56 of file AbstractRecoveryLog.java. |