| Package | Description |
|---|---|
| io.debezium.connector.oracle | |
| io.debezium.connector.oracle.logminer | |
| io.debezium.connector.oracle.logminer.valueholder |
| Modifier and Type | Method and Description |
|---|---|
private Scn |
OracleSnapshotChangeEventSource.getCurrentScn(AbstractSnapshotChangeEventSource.SnapshotContext ctx) |
| Modifier and Type | Method and Description |
|---|---|
private Optional<Scn> |
OracleSnapshotChangeEventSource.getLatestTableDdlScn(RelationalSnapshotChangeEventSource.RelationalSnapshotContext ctx)
Returns the SCN of the latest DDL change to the captured tables.
|
| Modifier and Type | Method and Description |
|---|---|
private boolean |
OracleSnapshotChangeEventSource.areSameTimestamp(Scn scn1,
Scn scn2)
Whether the two SCNs represent the same timestamp or not (resolution is only 3 seconds).
|
| Modifier and Type | Field and Description |
|---|---|
private Scn |
LogMinerStreamingChangeEventSource.endScn |
private Scn |
TransactionalBuffer.Transaction.firstScn |
private Scn |
LogFile.firstScn |
static Scn |
Scn.INVALID
Represents an Scn that is considered INVALID, useful as a placeholder.
|
private Scn |
TransactionalBuffer.lastCommittedScn |
private Scn |
TransactionalBuffer.Transaction.lastScn |
static Scn |
Scn.MAX
Represents an Scn that implies the maximum possible value of an SCN, useful as a placeholder.
|
private Scn |
LogFile.nextScn |
private Scn |
LogMinerStreamingChangeEventSource.startScn |
static Scn |
Scn.ZERO
Represents an Scn with a value of
0. |
| Modifier and Type | Field and Description |
|---|---|
private AtomicReference<Scn> |
TransactionalBufferMetrics.committedScn |
private AtomicReference<Scn> |
LogMinerMetrics.currentScn |
private AtomicReference<Scn> |
TransactionalBufferMetrics.offsetScn |
private AtomicReference<Scn> |
TransactionalBufferMetrics.oldestScn |
| Modifier and Type | Method and Description |
|---|---|
Scn |
Scn.add(Scn value)
Returns a
SCn whose value is (this + value). |
private Scn |
TransactionalBuffer.calculateSmallestScn() |
static Scn |
LogMinerHelper.getCurrentScn(OracleConnection connection)
This method returns current SCN from the database
|
(package private) static Scn |
LogMinerHelper.getEndScn(OracleConnection connection,
Scn startScn,
LogMinerMetrics metrics,
int defaultBatchSize)
This method returns next SCN for mining and also updates MBean metrics
We use a configurable limit, because the larger mining range, the slower query from LogMiner content view.
|
(package private) static Scn |
LogMinerHelper.getFirstOnlineLogScn(OracleConnection connection,
Duration archiveLogRetention)
This method fetches the oldest SCN from online redo log files
|
Scn |
LogFile.getFirstScn() |
Scn |
LogFile.getNextScn() |
static Scn |
RowMapper.getScn(TransactionalBufferMetrics metrics,
ResultSet rs) |
private static Scn |
LogMinerHelper.getScnFromString(String value) |
Scn |
Scn.subtract(Scn value)
Returns a
Scn whose value is (this - value). |
static Scn |
Scn.valueOf(int value)
Construct a
Scn from an integer value. |
static Scn |
Scn.valueOf(long value)
Construct a
Scn from a long value. |
static Scn |
Scn.valueOf(String value)
Construct a
Scn from a string value. |
| Modifier and Type | Method and Description |
|---|---|
Scn |
Scn.add(Scn value)
Returns a
SCn whose value is (this + value). |
static String |
SqlUtils.archiveLogsQuery(Scn scn,
Duration archiveLogRetention)
Obtain the query to be used to fetch archive logs.
|
private void |
TransactionalBuffer.commit(ChangeEventSource.ChangeEventSourceContext context,
OracleOffsetContext offsetContext,
Instant start,
List<TransactionalBuffer.CommitCallback> commitCallbacks,
Timestamp timestamp,
Scn smallestScn,
Scn scn,
EventDispatcher<?> dispatcher) |
(package private) boolean |
TransactionalBuffer.commit(String transactionId,
Scn scn,
OracleOffsetContext offsetContext,
Timestamp timestamp,
ChangeEventSource.ChangeEventSourceContext context,
String debugMessage,
EventDispatcher dispatcher)
Commits a transaction by looking up the transaction in the buffer and if exists, all registered callbacks
will be executed in chronological order, emitting events for each followed by a transaction commit event.
|
int |
Scn.compareTo(Scn o)
Compares this
SCn with the specified Scn. |
void |
TransactionalBuffer.CommitCallback.execute(Timestamp timestamp,
Scn smallestScn,
Scn commitScn,
int callbackNumber)
Executes callback.
|
private static void |
LogMinerHelper.flushRacLogWriters(Scn currentScn,
JdbcConfiguration config,
Set<String> racHosts)
Oracle RAC has one LogWriter per node (instance), we have to flush them all
We cannot use a query like from gv_instance view to get all the nodes, because not all nodes could be load balanced.
|
static List<LogFile> |
LogMinerHelper.getArchivedLogFilesForOffsetScn(OracleConnection connection,
Scn offsetScn,
Duration archiveLogRetention)
This method returns all archived log files for one day, containing given offset scn
|
(package private) static Scn |
LogMinerHelper.getEndScn(OracleConnection connection,
Scn startScn,
LogMinerMetrics metrics,
int defaultBatchSize)
This method returns next SCN for mining and also updates MBean metrics
We use a configurable limit, because the larger mining range, the slower query from LogMiner content view.
|
static List<LogFile> |
LogMinerHelper.getOnlineLogFilesForOffsetScn(OracleConnection connection,
Scn offsetScn)
This method returns all online log files, starting from one which contains offset SCN and ending with one containing largest SCN
18446744073709551615 on Ora 19c is the max value of the nextScn in the current redo
|
static String |
RowMapper.getSqlRedo(TransactionalBufferMetrics metrics,
ResultSet rs,
boolean isDml,
HistoryRecorder historyRecorder,
Scn scn,
String tableName,
String segOwner,
int operationCode,
Timestamp changeTime,
String txId)
It constructs REDO_SQL.
|
void |
NeverHistoryRecorder.record(Scn scn,
String tableName,
String segOwner,
int operationCode,
Timestamp changeTime,
String transactionId,
int csf,
String redoSql) |
void |
HistoryRecorder.record(Scn scn,
String tableName,
String segOwner,
int operationCode,
Timestamp changeTime,
String transactionId,
int csf,
String redoSql)
Records the LogMiner entry.
|
(package private) void |
TransactionalBuffer.registerCommitCallback(String transactionId,
Scn scn,
Instant changeTime,
TransactionalBuffer.CommitCallback callback)
Registers callback to execute when transaction commits.
|
void |
TransactionalBufferMetrics.setCommittedScn(Scn scn) |
void |
LogMinerMetrics.setCurrentScn(Scn scn) |
void |
TransactionalBufferMetrics.setOffsetScn(Scn scn) |
(package private) void |
TransactionalBufferMetrics.setOldestScn(Scn scn) |
static void |
LogMinerHelper.setRedoLogFilesForMining(OracleConnection connection,
Scn lastProcessedScn,
Duration archiveLogRetention)
This method substitutes CONTINUOUS_MINE functionality
|
(package private) static String |
SqlUtils.startLogMinerStatement(Scn startScn,
Scn endScn,
OracleConnectorConfig.LogMiningStrategy strategy,
boolean isContinuousMining)
This returns statement to build LogMiner view for online redo log files
|
(package private) static void |
LogMinerHelper.startLogMining(OracleConnection connection,
Scn startScn,
Scn endScn,
OracleConnectorConfig.LogMiningStrategy strategy,
boolean isContinuousMining,
LogMinerMetrics metrics)
This method builds mining view to query changes from.
|
Scn |
Scn.subtract(Scn value)
Returns a
Scn whose value is (this - value). |
| Constructor and Description |
|---|
LogFile(String fileName,
Scn firstScn,
Scn nextScn)
Create a log file that represents an archived log record.
|
LogFile(String fileName,
Scn firstScn,
Scn nextScn,
boolean current)
Creates a log file that represents an online redo log record.
|
Transaction(Scn firstScn) |
| Modifier and Type | Field and Description |
|---|---|
private Scn |
LogMinerDmlEntryImpl.scn |
| Modifier and Type | Method and Description |
|---|---|
Scn |
LogMinerDmlEntryImpl.getScn() |
Scn |
LogMinerDmlEntry.getScn()
the scn obtained from a LogMiner entry.
|
| Modifier and Type | Method and Description |
|---|---|
void |
LogMinerDmlEntryImpl.setScn(Scn scn) |
void |
LogMinerDmlEntry.setScn(Scn scn)
sets scn obtained from a LogMiner entry
|
Copyright © 2021 JBoss by Red Hat. All rights reserved.