Class RemoteInfinispanLogMinerEventProcessor
java.lang.Object
io.debezium.connector.oracle.logminer.processor.AbstractLogMinerEventProcessor<InfinispanTransaction>
io.debezium.connector.oracle.logminer.processor.infinispan.AbstractInfinispanLogMinerEventProcessor
io.debezium.connector.oracle.logminer.processor.infinispan.RemoteInfinispanLogMinerEventProcessor
- All Implemented Interfaces:
CacheProvider<InfinispanTransaction>,LogMinerEventProcessor,AutoCloseable
public class RemoteInfinispanLogMinerEventProcessor
extends AbstractInfinispanLogMinerEventProcessor
A concrete implementation of
AbstractInfinispanLogMinerEventProcessor that uses Infinispan with
the Hotrod client to store transaction and mined event data in caches.
The cache configurations are supplied via connector configurations and are expected to be valid XML
that represents parseable distributed cache setups for Infinispan.- Author:
- Chris Cranford
-
Nested Class Summary
Nested classes/interfaces inherited from class io.debezium.connector.oracle.logminer.processor.AbstractLogMinerEventProcessor
AbstractLogMinerEventProcessor.Counters -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final org.infinispan.client.hotrod.RemoteCacheManagerprivate final booleanprivate final LogMinerCache<String, LogMinerEvent> private static final Stringprivate static final Stringstatic final Stringprivate static final org.slf4j.Loggerprivate final LogMinerCache<String, String> private final LogMinerCache<String, String> private final LogMinerCache<String, InfinispanTransaction> Fields inherited from class io.debezium.connector.oracle.logminer.processor.AbstractLogMinerEventProcessor
counters, sqlQueryFields inherited from interface io.debezium.connector.oracle.logminer.processor.CacheProvider
EVENTS_CACHE_NAME, PROCESSED_TRANSACTIONS_CACHE_NAME, SCHEMA_CHANGES_CACHE_NAME, TRANSACTIONS_CACHE_NAME -
Constructor Summary
ConstructorsConstructorDescriptionRemoteInfinispanLogMinerEventProcessor(ChangeEventSource.ChangeEventSourceContext context, OracleConnectorConfig connectorConfig, OracleConnection jdbcConnection, EventDispatcher<OraclePartition, TableId> dispatcher, OraclePartition partition, OracleOffsetContext offsetContext, OracleDatabaseSchema schema, LogMinerStreamingChangeEventSourceMetrics metrics) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()private <C,V> LogMinerCache <C, V> createCache(String cacheName, OracleConnectorConfig connectorConfig, Field field) Get the LogMiner events cache Key - The event id, in the format oftransactionId-eventSequenceValue - The raw LogMinerEvent object instanceprivate PropertiesgetHotrodClientProperties(OracleConnectorConfig connectorConfig) Get the processed transactions cache Key - The unique transaction id Value - The transaction's commit or rollback system change numberGet the Schema Changes cache Key - The system change number of the schema change Value - The table the schema change is related toGet the transaction cache Key - The unique transaction id Value - The transaction instanceMethods inherited from class io.debezium.connector.oracle.logminer.processor.infinispan.AbstractInfinispanLogMinerEventProcessor
createTransactionMethods inherited from class io.debezium.connector.oracle.logminer.processor.AbstractLogMinerEventProcessor
abandonTransactionOverEventThreshold, abandonTransactions, addToTransaction, calculateNewStartScn, cleanupAfterTransactionRemovedFromCache, compareStartScn, createQueryStatement, dispatchSchemaChangeEventAndGetTableForNewCapturedTable, displayCacheStatistics, finalizeTransactionCommit, finalizeTransactionRollback, getAbandonedTransactionsCache, getAndRemoveTransactionFromCache, getConfig, getFirstActiveTransactionKey, getLastProcessedScn, getLastProcessedScnChangeTime, getLastScnToAbandon, getLoggedAbandonedTransactionTableNames, getOldestTransactionInCache, getQueryString, getSchema, getTableMetadataDdl, getTransactionCacheMinimumScn, getTransactionEventCount, getTransactionEventIterator, getTransactionIdPrefix, getTransactionKeysWithPrefix, handleCommit, handleCommitNotFoundInBuffer, handleDataEvent, handleLobWrite, handleMissingScn, handleRollback, handleRollbackNotFoundInBuffer, handleSchemaChange, handleSelectLobLocator, handleStart, handleUnsupportedEvent, hasSchemaChangeBeenSeen, isRecentlyProcessed, isTransactionIdWithNoSequence, isTransactionOverEventThreshold, isTransactionUserExcluded, isTrxIdRawValue, oldestTransactionComparison, process, processResults, processRow, purgeCache, reCreateInMemoryCache, removeEventWithRowId, resetTransactionToStart, warnPotentiallyStuckScnMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.debezium.connector.oracle.logminer.processor.CacheProvider
displayCacheStatistics
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
HOTROD_CLIENT_LOOKUP_PREFIX
- See Also:
-
HOTROD_CLIENT_PREFIX
- See Also:
-
HOTROD_SERVER_LIST
- See Also:
-
cacheManager
private final org.infinispan.client.hotrod.RemoteCacheManager cacheManager -
dropBufferOnStop
private final boolean dropBufferOnStop -
transactionCache
-
eventCache
-
processedTransactionsCache
-
schemaChangesCache
-
-
Constructor Details
-
RemoteInfinispanLogMinerEventProcessor
public RemoteInfinispanLogMinerEventProcessor(ChangeEventSource.ChangeEventSourceContext context, OracleConnectorConfig connectorConfig, OracleConnection jdbcConnection, EventDispatcher<OraclePartition, TableId> dispatcher, OraclePartition partition, OracleOffsetContext offsetContext, OracleDatabaseSchema schema, LogMinerStreamingChangeEventSourceMetrics metrics)
-
-
Method Details
-
close
- Throws:
Exception
-
getTransactionCache
Description copied from interface:CacheProviderGet the transaction cache- Key - The unique transaction id
- Value - The transaction instance
- Returns:
- the transaction cache, never
null
-
getEventCache
Description copied from interface:CacheProviderGet the LogMiner events cache- Key - The event id, in the format of
transactionId-eventSequence - Value - The raw LogMinerEvent object instance
- Returns:
- the evnts cache, never
null
- Key - The event id, in the format of
-
getSchemaChangesCache
Description copied from interface:CacheProviderGet the Schema Changes cache- Key - The system change number of the schema change
- Value - The table the schema change is related to
- Returns:
- the schema changes cache, never
null
-
getProcessedTransactionsCache
Description copied from interface:CacheProviderGet the processed transactions cache- Key - The unique transaction id
- Value - The transaction's commit or rollback system change number
- Returns:
- the processed transactions cache, never
null
-
getHotrodClientProperties
-
createCache
private <C,V> LogMinerCache<C,V> createCache(String cacheName, OracleConnectorConfig connectorConfig, Field field)
-