final class JTSLoggableResourceTable
extends java.lang.Object
implements weblogic.timers.NakedTimerListener
Modifier and Type | Class and Description |
---|---|
(package private) static class |
JTSLoggableResourceTable.CompletedXARecord
A package class that represents a completed transaction
waiting for delete.
|
private static class |
JTSLoggableResourceTable.CompletedXARecordSet
An inner class that represents a set of completed transactions
waiting for delete.
|
(package private) static class |
JTSLoggableResourceTable.SQLRuntimeException |
Modifier and Type | Field and Description |
---|---|
private JTSLoggableResourceTable.CompletedXARecordSet |
completedXids |
private java.lang.String |
createSQL |
private static java.lang.String |
DATA_COL_NAME |
private int |
dataColumnLength |
private int |
dbmsType |
private java.lang.String |
ddlName |
private static int |
DELETE_DELAY_MILLIS |
private java.lang.String |
deleteSQL |
private java.lang.String |
dmlName |
private java.lang.String |
domain |
private java.lang.String |
getSQL |
private java.lang.String |
insertSQL |
private boolean |
isADMDDL |
private boolean |
isDeleteBatchSupported |
private static int |
MAX_BATCH_SIZE |
private static int |
MAX_PIGGY_BACKING_BATCH_SIZE |
private static java.lang.String |
OWNER_ROW |
private static int |
PIGGY_BACKING_THRESHOLD |
private weblogic.timers.Timer |
pingTimer |
private static java.lang.String |
POOL_COL_NAME |
private java.lang.String |
poolName |
private java.lang.String |
recoverSQL |
private java.lang.String |
server |
private java.lang.String |
sizeSQL |
private static java.lang.String |
TABLE_PREFIX |
private java.lang.String |
tableRef |
private static java.lang.String |
TEST_ROW |
private static java.lang.String |
TEST_ROW2 |
private static int |
TIMER_INTERVAL_MILLIS |
private static int |
TIMER_TIMEOUT_MILLS |
private weblogic.timers.TimerManager |
timerManager |
private static java.lang.String |
VERSION_ROW |
private static java.lang.String |
VERSION_VALUE |
private static java.lang.String |
XID_COL_NAME |
Constructor and Description |
---|
JTSLoggableResourceTable(java.sql.Connection conn,
java.lang.String poolName) |
JTSLoggableResourceTable(java.sql.Connection conn,
java.lang.String poolName,
java.lang.String migratedServerName) |
Modifier and Type | Method and Description |
---|---|
(package private) void |
addCompleted(JTSLoggableResourceTable.CompletedXARecord first) |
(package private) void |
addCompleted(javax.transaction.xa.Xid xid) |
private void |
createTable(java.sql.Connection conn) |
private void |
delete(java.sql.Connection conn,
JTSLoggableResourceTable.CompletedXARecord first,
int batchSize) |
private boolean |
deleteCompletedOlderThanOrMoreThan(long delayMillis,
int max,
int timeoutMills) |
private void |
deleteRow(java.sql.Connection conn,
java.lang.String xidStr) |
private void |
deleteRowsInBatch(java.sql.Connection conn,
java.lang.String xidStr,
java.lang.String xidStr2) |
(package private) JTSLoggableResourceTable.CompletedXARecord |
deleteYoungestCompleted(java.sql.Connection conn) |
private void |
detectAndDeleteRowsInBatch(java.sql.Connection conn,
java.lang.String xidStr,
java.lang.String xidStr2) |
private void |
detectDataColumnlength(java.sql.Connection conn,
java.lang.String xidStr) |
private boolean |
existsForADMDDL(java.sql.Connection conn) |
(package private) void |
findOrCreateTable(java.sql.Connection conn)
This method verifies the table.
|
private java.sql.DatabaseMetaData |
getMetaData(java.sql.Connection conn) |
(package private) java.lang.String |
getRow(java.sql.Connection conn,
java.lang.String xidStr) |
(package private) int |
getRowCount()
returns number of rows in the table table
|
(package private) int |
getRowCount(java.sql.Connection conn) |
private void |
init(java.sql.Connection conn,
java.lang.String serverName) |
(package private) void |
insertRow(java.sql.Connection conn,
java.lang.String xidStr,
java.lang.String poolStr,
java.lang.String recStr) |
private java.sql.SQLException |
newVerifyException(java.lang.String row,
java.lang.String msg,
java.lang.Throwable cause) |
(package private) java.util.HashMap |
recover(java.sql.Connection conn)
Return all xid/record pairs for this table's pool.
|
(package private) int |
setMaxDeleteIntervalMillis(int millis)
Set the max age of committed tx records before lazy deletes occur.
|
void |
timerExpired(weblogic.timers.Timer timer)
This method is invoked by a TimerManager when a timer
expires.
|
java.lang.String |
toString() |
private void |
trace(javax.transaction.xa.Xid xid,
java.lang.String s) |
private void |
trace(javax.transaction.xa.Xid xid,
java.lang.String s,
java.lang.Exception e) |
private static final java.lang.String TABLE_PREFIX
private static final java.lang.String XID_COL_NAME
private static final java.lang.String POOL_COL_NAME
private static final java.lang.String DATA_COL_NAME
private static final java.lang.String VERSION_ROW
private static final java.lang.String VERSION_VALUE
private static final java.lang.String OWNER_ROW
private static final java.lang.String TEST_ROW
private static final java.lang.String TEST_ROW2
private static int DELETE_DELAY_MILLIS
private static final int TIMER_INTERVAL_MILLIS
private static final int MAX_BATCH_SIZE
private static final int PIGGY_BACKING_THRESHOLD
private static final int MAX_PIGGY_BACKING_BATCH_SIZE
private static final int TIMER_TIMEOUT_MILLS
private boolean isDeleteBatchSupported
private java.lang.String poolName
private java.lang.String tableRef
private java.lang.String dmlName
private java.lang.String ddlName
private java.lang.String domain
private java.lang.String server
private java.lang.String createSQL
private java.lang.String insertSQL
private java.lang.String deleteSQL
private java.lang.String recoverSQL
private java.lang.String sizeSQL
private java.lang.String getSQL
private int dataColumnLength
private int dbmsType
private JTSLoggableResourceTable.CompletedXARecordSet completedXids
private weblogic.timers.Timer pingTimer
private weblogic.timers.TimerManager timerManager
private boolean isADMDDL
JTSLoggableResourceTable(java.sql.Connection conn, java.lang.String poolName, java.lang.String migratedServerName) throws java.sql.SQLException
java.sql.SQLException
JTSLoggableResourceTable(java.sql.Connection conn, java.lang.String poolName) throws java.sql.SQLException
java.sql.SQLException
private void init(java.sql.Connection conn, java.lang.String serverName) throws java.sql.SQLException
java.sql.SQLException
private java.sql.DatabaseMetaData getMetaData(java.sql.Connection conn) throws java.sql.SQLException, JTSLoggableResourceTable.SQLRuntimeException
java.sql.SQLException
JTSLoggableResourceTable.SQLRuntimeException
private void createTable(java.sql.Connection conn) throws java.sql.SQLException
java.sql.SQLException
private java.sql.SQLException newVerifyException(java.lang.String row, java.lang.String msg, java.lang.Throwable cause) throws java.sql.SQLException
java.sql.SQLException
void findOrCreateTable(java.sql.Connection conn) throws java.sql.SQLException
java.sql.SQLException
private boolean existsForADMDDL(java.sql.Connection conn) throws java.sql.SQLException
java.sql.SQLException
int getRowCount(java.sql.Connection conn) throws java.sql.SQLException
java.sql.SQLException
int getRowCount() throws java.sql.SQLException
java.sql.SQLException
int setMaxDeleteIntervalMillis(int millis)
private void detectDataColumnlength(java.sql.Connection conn, java.lang.String xidStr) throws java.sql.SQLException
java.sql.SQLException
java.lang.String getRow(java.sql.Connection conn, java.lang.String xidStr) throws java.sql.SQLException
java.sql.SQLException
void insertRow(java.sql.Connection conn, java.lang.String xidStr, java.lang.String poolStr, java.lang.String recStr) throws java.sql.SQLException
java.sql.SQLException
private void deleteRow(java.sql.Connection conn, java.lang.String xidStr) throws java.sql.SQLException
java.sql.SQLException
private void deleteRowsInBatch(java.sql.Connection conn, java.lang.String xidStr, java.lang.String xidStr2) throws java.sql.SQLException
java.sql.SQLException
private void detectAndDeleteRowsInBatch(java.sql.Connection conn, java.lang.String xidStr, java.lang.String xidStr2) throws java.sql.SQLException
java.sql.SQLException
void addCompleted(javax.transaction.xa.Xid xid)
void addCompleted(JTSLoggableResourceTable.CompletedXARecord first)
java.util.HashMap recover(java.sql.Connection conn) throws java.sql.SQLException
java.sql.SQLException
public void timerExpired(weblogic.timers.Timer timer)
weblogic.timers.TimerListener
timerExpired
in interface weblogic.timers.TimerListener
timer
- The timer that expired and caused the
listener to be invoked.private void delete(java.sql.Connection conn, JTSLoggableResourceTable.CompletedXARecord first, int batchSize) throws java.sql.SQLException
java.sql.SQLException
private boolean deleteCompletedOlderThanOrMoreThan(long delayMillis, int max, int timeoutMills)
JTSLoggableResourceTable.CompletedXARecord deleteYoungestCompleted(java.sql.Connection conn)
public java.lang.String toString()
toString
in class java.lang.Object
private void trace(javax.transaction.xa.Xid xid, java.lang.String s)
private void trace(javax.transaction.xa.Xid xid, java.lang.String s, java.lang.Exception e)