Commit Graph

679 Commits

Author SHA1 Message Date
Chris Cranford
078b8f7270 DBZ-3557 Remove exclusive from SnapshotLockingMode, use shared as default 2021-06-02 15:58:23 +02:00
Chris Cranford
d9d2706a17 DBZ-3557 Fix typo 2021-06-02 15:58:23 +02:00
Chris Cranford
047c505bc1 DBZ-3557 Add snapshot.locking.mode option for Oracle 2021-06-02 15:58:23 +02:00
Gunnar Morling
c4f5cbca6c DBZ-3328 Removing unused field 2021-06-02 12:18:48 +02:00
Chris Cranford
0af3959c2d DBZ-3328 Use object arrays to write column values
Previously we used a wrapper class, LogMinerColumnValueImpl, to store
both the column name and value; however this introduced some overhead
in object allocation.  This change mostly focused on the removal of
that implementation and its interface in favor of creating object
arrays up-front and writing the column values directly.

Included as well as the following changes:

* Deprecated LogMinerColumnValue, impl, and wrapper
* Removed SEQUENCE# from LogMiner query, no longer needed
* Adapted tests to runtime changes with object arrays
2021-06-02 12:18:48 +02:00
Chris Cranford
f178a6e235 DBZ-3328 Remove superfluous state from LogMinerDmlEntryImpl 2021-06-02 12:18:48 +02:00
Chris Cranford
7dd980e505 DBZ-3328 Fix test failures 2021-06-02 12:18:48 +02:00
Gunnar Morling
4dcda868b5 DBZ-3328 Adding factory methods for LogMinerDmlEntryImpl 2021-06-02 12:18:48 +02:00
Chris Cranford
19e650dc25 DBZ-3328 Updated comment 2021-06-02 12:18:48 +02:00
Chris Cranford
49f3ee6172 DBZ-3328 Performance cleanup
* Use loop rather than streams
* Remove usage of Optional
* No need to add superfluous null-valued columns
2021-06-02 12:18:48 +02:00
Chris Cranford
52906cf154 DBZ-3328 Avoid copying in Oracle LogMiner DML parser 2021-06-02 12:18:48 +02:00
Chris Cranford
ae9a32ab83 DBZ-3565 Make log.mining.history.xxx options internal 2021-06-02 10:47:54 +02:00
Chris Cranford
fd5afb04ea DBZ-3565 Fix formatting 2021-06-02 10:47:54 +02:00
Chris Cranford
eb22eaf85f DBZ-3565 Always use NeverHistoryRecorder if retention hours are 0 2021-06-02 10:47:54 +02:00
Chris Cranford
68c2c40097 DBZ-3565 Rename Oracle LogMiner history retention hours option
* Moved option to `log.mining.` namespace rather than `database.`
* Updated the documentation and field description accordingly.
2021-06-02 10:47:54 +02:00
Chris Cranford
9a5d48524a DBZ-3556 Remove ByteBuffer usage and refactor
* Combines BLOB chunks into a single hex-string for conversion
* Moved several strings to static variables
2021-05-31 10:03:24 +02:00
Gunnar Morling
28e36d55b1 DBZ-3554 Formatting 2021-05-26 13:04:25 +02:00
Chris Cranford
abb19d7437 DBZ-3554 Exclude ORA_TEMP_% tables from LogMiner DDL detection 2021-05-26 12:56:09 +02:00
Gunnar Morling
50bfd93e64 DBZ-3556 Moving getHexToRawByteArray() to value converters 2021-05-26 09:10:55 +02:00
Chris Cranford
901a74e604 DBZ-3556 Reduce database round-trip for LOB handling 2021-05-26 08:56:57 +02:00
Jiri Pechanec
39df21cdc1 DBZ-3460 New Oracle version in README 2021-05-25 08:02:56 +02:00
Patrick Chu
9bdbec995f DBZ-3545 Check for "IS NULL" in SelectLobParser 2021-05-21 10:13:16 +02:00
Debezium Builder
ead4ee7226 [maven-release-plugin] prepare for next development iteration 2021-05-20 19:07:44 +02:00
Debezium Builder
9e16df7d4b [maven-release-plugin] prepare release v1.6.0.Beta1 2021-05-20 19:07:44 +02:00
Chris Cranford
172c17d207 DBZ-2948 Fix IndexOutOfBoundsException with LOB select parser 2021-05-20 08:21:08 +02:00
Chris Cranford
754462a436 DBZ-2948 Fix potential null value being assigned to offset SCN 2021-05-20 08:21:08 +02:00
Chris Cranford
4aeb6069a3 DBZ-814 Ignore unsupported column types 2021-05-20 08:21:08 +02:00
Chris Cranford
8306bb5f15 DBZ-2948 Increase size of large CLOB/BLOB values 2021-05-20 08:21:08 +02:00
Chris Cranford
467a7f21f6 DBZ-2948 Implement BLOB/CLOB support for Oracle Xstream 2021-05-20 08:21:08 +02:00
Chris Cranford
fb7378ef52 DBZ-2948 Fix formatting 2021-05-20 08:21:08 +02:00
Chris Cranford
49703d9dc9 DBZ-2948 Implement BLOB/CLOB support for Oracle LogMiner 2021-05-20 08:21:08 +02:00
Chris Cranford
837a70f131
DBZ-3472 Relax retry logic for "No more data to read from socket"
Co-authored-by: Gunnar Morling <gunnar.morling@googlemail.com>
2021-05-20 07:58:31 +02:00
Chris Cranford
d147d1f517
DBZ-3240 Remove database.tablename.case.insensitive deprecated option 2021-05-19 20:44:59 +02:00
Chris Cranford
d5c8dcff9f DBZ-3539 Mark xstream dependency scope as provided 2021-05-19 17:22:27 +02:00
Gunnar Morling
50c285031a
DBZ-3456 Minor clean-up 2021-05-19 13:42:03 +02:00
Thomas Aregger
d1670b636c
DBZ-3456 Timezone difference not considered in LagFromSourceInMilliseconds calculation;
* Retrieve v$logmnr_contents.change_time in UTC
* Respect time zones when calculating time difference
* Allow constructors to be annotated with VisibleForTesting
2021-05-19 13:41:02 +02:00
Chris Cranford
118cee24a7 DBZ-3256 Formatting 2021-05-19 09:40:19 +02:00
Chris Cranford
81190df6a8 DBZ-3256 Document query fragments 2021-05-19 09:40:19 +02:00
Chris Cranford
b7c1d798a3 DBZ-3256 Consolidate Oracle redo/archive log queries
* Moves de-duplication to database using SQL query, i.e. no duplicate SCN ranges
* Provides a consistent view of logs rather than relying on multiple queries
2021-05-19 09:40:19 +02:00
Chris Cranford
ab2c3f41e6 DBZ-3533 Drop tables after signal tests concluded 2021-05-18 14:24:54 -04:00
Chris Cranford
a33af6a2d7 DBZ-2916 Fix test failures 2021-05-18 13:53:43 -04:00
Thomas Aregger
2d87fa9b3d DBZ-3482 Parse timestamps with short form for months with locale "en" 2021-05-18 11:05:13 -04:00
Thomas Aregger
0027eb9f9c DBZ-3482 Add missing format model
When the format model is omitted, the default is used. The default is determined from NLS settings
2021-05-18 11:05:13 -04:00
Thomas Aregger
5009a9d586 DBZ-3482 Change date string to match provided format model 2021-05-18 11:05:13 -04:00
Thomas Aregger
f31909ab12 DBZ-3482 Use format model for DATE data types that is independent of clients NLS settings 2021-05-18 11:05:13 -04:00
Chris Cranford
9b011c75a3 DBZ-3322 Suggested test case change 2021-05-18 15:49:19 +02:00
Chris Cranford
967b945e0f DBZ-3322 Bubble up exceptions from RowMapper 2021-05-18 15:49:19 +02:00
Chris Cranford
00d75c282b DBZ-3322 Handle Oracle partially committed transactions 2021-05-18 15:49:19 +02:00
Chris Cranford
b13cbb1077 DBZ-2916 Add support for Oracle DDL statement parsing 2021-05-18 14:58:20 +02:00
Chris Cranford
0c8c0255a9 DBZ-3377 Restart Oracle connector on ORA-01291, missing logfile 2021-05-17 11:01:25 +02:00
Chris Cranford
d5bf7a3c0b DBZ-832 Add Oracle test for table without primary key 2021-05-13 06:50:15 +02:00
John Wu
05ce63e06a DBZ-3516 LogMining redo log switch not being detected 2021-05-12 14:40:16 -04:00
Chris Cranford
8f953dc9fe DBZ-3400 Remove Oracle Antlr DML parser 2021-05-11 17:56:55 +02:00
Chris Cranford
1d46cdb6b7 DBZ-3332 Limit oldest archive log query to only active records 2021-05-11 12:42:49 +02:00
Debezium Builder
4dd3a146ca [maven-release-plugin] prepare for next development iteration 2021-05-06 02:40:15 -04:00
Debezium Builder
b3c5bb281c [maven-release-plugin] prepare release v1.6.0.Alpha1 2021-05-06 02:40:15 -04:00
Gunnar Morling
dc02b896cd DBZ-3449 Moving QA releated plug-ins to separate profile, so to avoid loading them at all 2021-04-28 15:14:05 +02:00
Gunnar Morling
2088c035b1 DBZ-3449 Adding "quick" profile 2021-04-26 06:09:14 +02:00
kewenchao
47f380b565 DBZ-3397 Avoiding exception if system language is not English 2021-04-20 09:14:36 +02:00
Patrick Chu
e37abe5f92 DBZ-3413 Add additional unit tests for insert and update 2021-04-19 08:53:19 -04:00
Patrick Chu
ecae5b6b91 DBZ-3413 Handle double single quotes in LogMinerDmlParser
Double single quotes are treated as 2 quotes instead of 1 escaped quote in the WHERE clause parsing function.
2021-04-19 08:53:19 -04:00
Chris Cranford
7bd3e51e12 DBZ-1721 Fix DDL ParserException ID NUMBER(4) GENERATED BY
* Sync Oracle DDL grammar with latest upstream changes
* Implemented identity sequence spec for auto-generated column types
* Added Oracle examples to DDL parser project
* Corrected syntax failure after syncing grammar with upstream
2021-04-08 13:23:23 +02:00
Chris Cranford
bf0138064b DBZ-3365 Use Instantiator implementation 2021-04-08 11:56:35 +02:00
Chris Cranford
e5f8491fbb DBZ-3365 Fix formatting 2021-04-08 11:56:35 +02:00
Chris Cranford
c406527ccb DBZ-3365 Remove unused imports 2021-04-08 11:56:35 +02:00
Chris Cranford
0f35b0455d DBZ-3365 Allow building Oracle connector on CI 2021-04-08 11:56:35 +02:00
Debezium Builder
8a88ba9b45 [maven-release-plugin] prepare for next development iteration 2021-04-08 04:04:00 -04:00
Debezium Builder
74152afe74 [maven-release-plugin] prepare release v1.5.0.Final 2021-04-08 04:04:00 -04:00
Chris Cranford
f95a2f877e DBZ-3367 Correctly parse function string-args with parenthesis characters 2021-03-31 12:44:55 +02:00
Chris Cranford
776180a0df DBZ-3347 Emit schema change events with correct source partition 2021-03-30 07:26:06 +02:00
Chris Cranford
dd24a94a62 DBZ-2911 Fix Oracle test compatibility 2021-03-30 05:53:38 +02:00
Chris Cranford
705b98f79f DBZ-3341 Handle multiple local locations 2021-03-26 18:48:02 +01:00
Chris Cranford
6b7c7bc252 DBZ-3341 Only mine local destination archive logs 2021-03-26 18:48:02 +01:00
Chris Cranford
aee3550dc6 DBZ-3348 Oracle LogMiner can incorrectly resolve starting SCN is available 2021-03-26 08:22:34 +01:00
Chris Cranford
23baf34ee1 DBZ-3344 Fix Oracle test failures 2021-03-25 11:06:31 +01:00
Debezium Builder
6b4d88bb51 [maven-release-plugin] prepare for next development iteration 2021-03-24 06:35:02 -04:00
Debezium Builder
c578715233 [maven-release-plugin] prepare release v1.5.0.CR1 2021-03-24 06:35:02 -04:00
Chris Cranford
d8f0d2ba5a DBZ-2537 Rework Oracle's streaming metrics
* Consolidated LogMinerMetrics and TransactionalBufferMetrics
* Renamed LogMinerMetrics to OracleStreamingChangeEventSourceMetrics
* Standardized metrics method names & types
* Updated documentation to reflect metrics changes
2021-03-23 15:25:14 -04:00
Chris Cranford
1d9594ed88 DBZ-3290 Suggested changes
* Use {debezium-version} variable in examples
* Correct typos
* Document non-support for CLOB/BLOB data types
* Fix rendering of <= with unicode character
* Moved XStream documentation into separate section
* Moved database.oracle.version to internal
* Removed reference to database.oracle.version
* Resolve XStream POS version from OracleDatabaseVersion as fallback
  when internal.database.oracle.version is not supplied.
2021-03-23 15:25:14 -04:00
Jiri Pechanec
9e994967ed DBZ-3257 Use new method in tests 2021-03-23 09:48:54 +01:00
Chris Cranford
6d686d7543 DBZ-3257 Use DebeziumException instead 2021-03-23 06:12:04 +01:00
Chris Cranford
9aa1ba1471 DBZ-3257 Revert Clob behavior for Oracle LogMiner to avoid null values
* Snapshot now emits clob/nclob values correctly (all adapters)
* Fixed bug with LogMiner emitting clob/nclob values when using new parser
2021-03-23 06:12:04 +01:00
Chris Cranford
b85044cb14 DBZ-3319 Recalculate current log sequence 2021-03-22 20:04:00 -04:00
Chris Cranford
d75319a3ca DBZ-3319 Fix race condition with log switch detection
Rather than relying on log switch detection by looking at the name
of the current log file, this change uses the unique and always
increasing sequence to derive the log switch state to avoid any
type of ambiguity.
2021-03-22 09:04:54 +01:00
Chris Cranford
a8a22bd828 DBZ-3268 Remove unused code 2021-03-19 18:07:12 +01:00
Chris Cranford
fae784001e DBZ-3268 Emit TIMESTAMP WITH LOCAL TIME ZONE columns in UTC 2021-03-19 18:07:12 +01:00
Chris Cranford
d47db6e098 DBZ-3268 Use dedicated connection for XStream API
Once a connection is bound to XStream API, issuing any other type of query
or operation can lead to failures due to concurrent use of the connection
by Debezium and XStream's native methods.  This commit adds a dedicated
connection used specifically by XStream to avoid this concurrency issue,
so that data types such as TIMESTAMP WITH LOCAL TIME ZONE works.
2021-03-19 18:07:12 +01:00
Chris Cranford
7a98fcd96c DBZ-3268 Implement timestamp with local timezone support 2021-03-19 18:07:12 +01:00
Chris Cranford
6b8f61386b DBZ-3268 Fix Oracle time.precision.mode support 2021-03-19 18:07:12 +01:00
Chris Cranford
31ffa5e816 DBZ-2994 Fix ClassCastException & compilation error 2021-03-18 22:23:41 -04:00
Chris Cranford
41b571fb37 DBZ-3292 Apply suggested changes 2021-03-18 21:59:38 +01:00
Chris Cranford
dc92001676 DBZ-3292 Prefer archived logs over redo logs for same SCN range. 2021-03-18 21:59:38 +01:00
Jiri Pechanec
495be2659b DBZ-2511 Dedicated logger for schema name adjuster 2021-03-18 14:42:34 +01:00
Chris Cranford
97da4333a3 DBZ-2994 Return current SCN as string in LogMinerMetrics 2021-03-17 20:37:24 +01:00
Chris Cranford
bd7adb40ed DBZ-2994 Fix test failures for Oracle XStreams 2021-03-17 20:37:24 +01:00
Chris Cranford
36f17a7630 DBZ-2994 Removed Scn.ZERO and Scn.INVALID in favor of Scn.NULL 2021-03-17 20:37:24 +01:00
Chris Cranford
f91a01fb86 DBZ-2994 Use null default rather than Scn.ZERO 2021-03-17 20:37:24 +01:00
Chris Cranford
da02ca2a23 DBZ-2994 Suggested changes 2021-03-17 20:37:24 +01:00
Chris Cranford
f3412c02da DBZ-2994 Removed SCN2_KEY and COMMIT2_SCN_KEY from offsets 2021-03-17 20:37:24 +01:00
Chris Cranford
204ef73422 DBZ-2994 Moved Scn to parent package
Since the Scn class is used by the snapshot process, it makes sense to move
this class up by one package since it can now be leveraged by both adapters
as needed.
2021-03-17 20:37:24 +01:00
Chris Cranford
a9d59710a7 DBZ-2994 Use string-representation of SCN in offsets & source info 2021-03-17 20:37:24 +01:00
Chris Cranford
769f8dc4f4 DBZ-2457 Use BigInteger rather than BigDecimal for SCN values 2021-03-17 20:37:24 +01:00
Chris Cranford
787b459771 DBZ-3305 Fix IndexOutOfBoundsException for LogMiner Update DMLs 2021-03-17 12:07:58 +01:00
Chris Cranford
39dd1e6980 DBZ-3295 Fix typo in comments 2021-03-17 06:54:53 -04:00
Chris Cranford
f2593c2737 DBZ-3295 Restrict all LogMiner results to specified SCN boundary 2021-03-17 06:54:53 -04:00
Gunnar Morling
1f02d25738 DBZ-3271 Removing unused methods 2021-03-17 09:54:25 +01:00
Gunnar Morling
911b5e9a3b DBZ-3271 Unifying filter handling across relational connectors 2021-03-17 09:54:25 +01:00
Jiri Pechanec
f2eb868cde DBZ-2145 Provide Debezium BOM 2021-03-17 07:54:12 +01:00
Chris Cranford
15fd604b1f DBZ-3250 Add integration test 2021-03-16 18:12:10 +01:00
Chris Cranford
634be509d2 DBZ-3236 Make ORA-26653 is a retriable exception 2021-03-16 09:49:29 +01:00
Debezium Builder
f57057421b [maven-release-plugin] prepare for next development iteration 2021-03-12 04:38:17 -05:00
Debezium Builder
b57293013a [maven-release-plugin] prepare release v1.5.0.Beta2 2021-03-12 04:38:16 -05:00
Chris Cranford
3e82185e29 DBZ-3254 Log exception on failed connection validation 2021-03-12 08:01:39 +01:00
Chris Cranford
599341dece DBZ-3145 Suggested changes 2021-03-12 08:00:06 +01:00
Chris Cranford
043e07a33a DBZ-3145 Introduce LogFile implementation 2021-03-12 08:00:06 +01:00
Chris Cranford
858cfbcb7a DBZ-3145 Removed unused code & irrelevant todo 2021-03-12 08:00:06 +01:00
Chris Cranford
8bf8a7d40a DBZ-3145 Use Scn domain type rather than long 2021-03-12 08:00:06 +01:00
Chris Cranford
bb90d68903 DBZ-3145 Do not rely on Oracle version-specific max SCN values 2021-03-12 08:00:06 +01:00
Jiri Pechanec
123d9ef4eb DBZ-3213 Refactor Maven structure to deploy support modules 2021-03-11 16:14:15 +01:00
Jiri Pechanec
0b12e8a02c [release] Prevents NPE as parent method is not called 2021-03-11 08:58:06 +01:00
Jiri Pechanec
457598914d DBZ-3258 Parse space in table name 2021-03-11 08:01:25 +01:00
Gunnar Morling
e0c651395d DBZ-3141 Comment fix 2021-03-10 19:12:34 +01:00
Jiri Pechanec
de0d540a9f DBZ-3141 Change schema signal for Oracle 2021-03-10 19:12:34 +01:00
Chris Cranford
09fa9d38ab DBZ-3235 Do not fail parsing Oracle LogMiner SQL without a WHERE-clause 2021-03-09 07:22:12 +01:00
Chris Cranford
efc735d55c DBZ-3241 Use LogMiner adapter as default for Oracle connector 2021-03-06 10:33:43 +01:00
Chris Cranford
5f0e09d0b8 DBZ-3242 Fix test failure 2021-03-05 17:55:18 -05:00
Chris Cranford
b98dae6436 DBZ-3242 Disable log.mining.transaction.retention.hours by default
* Default value `0` disables the check
* Any negative value will show a configuration problem
* Any positive value over `0` will enable the retention check
2021-03-05 18:14:23 +01:00
Chris Cranford
8a7276cebc DBZ-3219 Fix column include/exclude support for Oracle 2021-03-05 10:35:00 +01:00
Chris Cranford
b0092dcfb4 DBZ-3190 Deprecate database.tablename.case.insensitive option
* Option deprecated
* If provided, value continues to be used with warning logged
* If not provided, value will be resolved by database version
2021-03-05 10:17:40 +01:00
Chris Cranford
8854a5c1a6 DBZ-3237 Cleanup test method artifacts 2021-03-05 09:12:32 +01:00
Chris Cranford
be80834838 DBZ-3208 Fix regression with Oracle XStreams 2021-03-04 20:33:08 +01:00
Chris Cranford
bb24f931d3 DBZ-3166 Add Oracle connector to build, updated READMEs 2021-03-02 13:25:54 -05:00
Chris Cranford
3dd0626e9f DBZ-3154 Updated README, Suggested changes 2021-03-02 17:24:33 +01:00
Chris Cranford
f0bdc22714 DBZ-3154 Use constant references 2021-03-02 17:24:33 +01:00
Chris Cranford
61cfe48b56 DBZ-3154 Update test suite to run in CDB & non-CDB modes. 2021-03-02 17:24:33 +01:00
Chris Cranford
8ac227b59c DBZ-3128 Revert fix for DBZ-2679. 2021-03-02 14:10:40 +01:00
Chris Cranford
1ed51fe1f9 DBZ-3208 Don't emit NUMBER(1) as boolean types
* NUMBER(1) column types emit as numeric
* Added OOTB converter, NumberOneToBooleanConverter
2021-03-02 09:05:41 +01:00
Chris Cranford
4d1d9bafee DBZ-3036 Detect and skip Oracle IOT special tables 2021-02-26 08:11:44 +01:00
Chris Cranford
ddb1498d1d DBZ-3194 Allow ORA-01284 errors to be retried 2021-02-26 08:08:38 +01:00
Chris Cranford
addec8f8a3 DBZ-3200 Fix potential division-by-zero with CommitThroughput metric 2021-02-26 08:07:35 +01:00
Chris Cranford
07322485b6 DBZ-3193 Fix IndexOutOfBoundsException with "IS NULL" predicate 2021-02-25 23:04:24 +01:00
Chris Cranford
2d919288f8 DBZ-3038 Fix LogMinerMetricsTest failure 2021-02-25 07:41:44 -05:00
Chris Cranford
8463249803 DBZ-3038 Fix LogMinerMetricsTest failure 2021-02-25 07:38:35 -05:00
Chris Cranford
2dedf1e27a DBZ-3038 Capture additional LogMiner JMX Metrics
* Min/Max duration to start a mining session
* Min/Max number of logs mined in a given session
* Min/Max duration of a mining batch loop
* Some metrics cleanup
2021-02-25 11:42:12 +01:00
Chris Cranford
879449d1c3 DBZ-2875 Start streaming LogMiner changes after offset SCN 2021-02-25 11:37:59 +01:00
Debezium Builder
c3980e5c17 [maven-release-plugin] prepare for next development iteration 2021-02-23 14:10:58 -05:00
Debezium Builder
454ba981f6 [maven-release-plugin] prepare release v1.5.0.Beta1 2021-02-23 14:10:58 -05:00
Debezium Builder
306efe9956 [maven-release-plugin] prepare for next development iteration 2021-02-23 13:32:13 -05:00
Debezium Builder
4995a207d9 [maven-release-plugin] prepare release v1.5.0.Beta1 2021-02-23 13:32:13 -05:00
Chris Cranford
63358d12b5 DBZ-3167 Add tests for column include/exclude & legacy options 2021-02-23 17:26:38 +01:00
Chris Cranford
8708817fdf DBZ-3167 Removed column.blacklist, cleaned up config definition 2021-02-23 17:26:38 +01:00
Jiri Pechanec
717278ac71 DBZ-3172 Convert NUMBER to boolean 2021-02-23 11:15:01 -05:00
Chris Cranford
db64e1092c DBZ-3151 Fix NullPointerException with Pattern matching 2021-02-23 15:02:49 +01:00
Chris Cranford
013b24e3f8 DBZ-3165 Fix test failure 2021-02-23 15:02:49 +01:00
Chris Cranford
49f8f5d70c DBZ-3009 Suggested changes
* Fixed prior commit mistake with log.mining.strategy default
* Added comment on excluded schema logic when building LogMiner query
2021-02-23 12:29:20 +01:00
Chris Cranford
fde3d2ff81 DBZ-3009 Exclude system schemas in LogMiner session queries 2021-02-23 12:29:20 +01:00
Chris Cranford
514c513f96 DBZ-3009 Fix tests compatibility w/Xstream 2021-02-23 12:29:20 +01:00
Chris Cranford
461b784974 DBZ-3009 Support multiple schemas with Oracle LogMiner 2021-02-23 12:29:20 +01:00
Chris Cranford
85cfdd2236 DBZ-3034 Remove build deprecation warnings 2021-02-23 10:52:49 +01:00
Chris Cranford
a9d3b889ee DBZ-3119 Implement Config validation 2021-02-22 20:00:11 +01:00
Chris Cranford
2727b151fc DBZ-3165 Remove dependency on JAXB 2021-02-22 18:37:30 +01:00
Chris Cranford
556886b522 DBZ-3151 Use pattern for SYS_NC_OID$, SYS_NC_ROWINFO$, and SYS_NCnnnnn$ names 2021-02-22 15:23:18 +01:00
Chris Cranford
f962524de7 DBZ-3151 Properly handle system-generated hidden column unique indexes 2021-02-22 15:23:18 +01:00
Chris Cranford
738b365bc5 DBZ-3109 Account for multiple log group types 2021-02-19 21:42:05 +01:00
Chris Cranford
dfdd0858dd DBZ-3078 Use max.queue.size for fetch size 2021-02-19 21:39:27 +01:00
Chris Cranford
25f1eb5776 DBZ-3078 More LogMiner DML parser, Metrics and Benchmark changes
* Consolidated converts to simply OracleValueConverters
* Defined a common interface for legacy and new DML parsers
* Parser failures now through exception rather than skip event
* Added support for "Unsupported Type" in DML parsing (spatial columns)
* Units encoded into JMX metrics names
* Additional JMX metrics added & some metrics calculations improved
* Introduced JMH benchmarks for Oracle LogMiner parser & end-to-end
2021-02-19 21:39:27 +01:00
Chris Cranford
9c2edc7e61 DBZ-3078 Connector adjustments for new DML parser 2021-02-19 21:39:27 +01:00
Chris Cranford
92b9558218 DBZ-3078 Initial implementation of FastDmlParser 2021-02-19 21:39:27 +01:00
Chris Cranford
aa584c08cd DBZ-3153 Capture LogMiner parameters when LogMiner session fails to start 2021-02-19 19:03:45 +01:00
Chris Cranford
88b2f73842 DBZ-3001 Do not resolve database version lazily 2021-02-19 17:29:20 +01:00
Chris Cranford
d061f58b05 DBZ-3001 Control MAX Scn for LogMiner based on Oracle version 2021-02-19 17:29:20 +01:00
Chris Cranford
9f2e2971b7 DBZ-3110 Introduce RequireDatabaseOption test annotation 2021-02-19 17:01:25 +01:00
Chris Cranford
304f38e15a DBZ-3090 Cleanup LogMiner TransactionBuffer commit handler 2021-02-18 07:59:55 +01:00
Chris Cranford
4dbd9f3e4c DBZ-3090 Commit events in same thread that processes results for LogMiner 2021-02-18 07:59:55 +01:00
Chris Cranford
570e35eaad DBZ-3090 Fix emitting transaction end event for LogMiner 2021-02-18 07:59:55 +01:00
Chris Cranford
2810683ad2 DBZ-2754 Fix test failures 2021-02-17 20:16:00 -05:00
Chris Cranford
3043a6f799 DBZ-2754 Fix test compilation failures 2021-02-17 20:11:01 -05:00
Gunnar Morling
0980492bb0 DBZ-2754 Using Duration instead of long for durations 2021-02-17 12:13:16 +01:00
Chris Cranford
2be6238487 DBZ-2754 Add log.mining.transaction.retention.hours config option 2021-02-17 12:13:16 +01:00
Chris Cranford
d3a51a1080 DBZ-3057 Provide table filters to reading of database schemas 2021-02-16 09:41:36 +01:00
Chris Cranford
3fd64f5827 DBZ-3057 Fix reading table unique indices with non-quoted table names 2021-02-16 09:41:36 +01:00
Debezium Builder
279a19bfd0 [maven-release-plugin] prepare for next development iteration 2021-02-06 01:32:03 -05:00
Debezium Builder
68dd5b92e9 [maven-release-plugin] prepare release v1.5.0.Alpha1 2021-02-06 01:32:03 -05:00
Debezium Builder
57317b894c [maven-release-plugin] prepare for next development iteration 2021-02-05 00:20:36 -05:00
Debezium Builder
4816f3a539 [maven-release-plugin] prepare release v1.5.0.Alpha1 2021-02-05 00:20:36 -05:00
Chris Cranford
933ca55b74 DBZ-3055 Use JdbcConnection#query instead 2021-02-05 05:42:59 +01:00
Chris Cranford
e973c11818 DBZ-3055 Capture table state when LogMiner session fails 2021-02-05 05:42:59 +01:00
Chris Cranford
ccb2329e99 DBZ-2999 Fix double execution of LogMiner session 2021-02-04 16:14:14 -05:00
Chris Cranford
15e78f66bc DBZ-2939 Added ORA-01333 as valid retriable exception 2021-02-04 06:07:43 +01:00
Chris Cranford
fffe1fb6ea DBZ-2980 Fix logging parameters 2021-02-03 18:09:40 -05:00
Chris Cranford
d56fc5b2bd DBZ-2982 Fix LogMinerMetrics bean registration 2021-02-03 18:08:25 -05:00
Chris Cranford
a9d514588c DBZ-2999 Standardize casing for LogMiner 2021-02-03 13:01:23 -05:00
Chris Cranford
760915eab6 DBZ-2999 Log SCN ranges for Redo and Archive logs 2021-02-03 13:01:23 -05:00
Chris Cranford
5da2d4b91f DBZ-2999 Capture V$LOGMNR_LOG contents upon ORA-01291 exception 2021-02-03 13:01:23 -05:00
Chris Cranford
58985e0c90 DBZ-2999 Few more logging improvements 2021-02-03 13:01:23 -05:00
Chris Cranford
01ece5cbdb DBZ-2999 Fix unnecessary logging of current redo logs 2021-02-03 13:01:23 -05:00
Chris Cranford
c58cc44053 DBZ-2999 Improve Logminer logging 2021-02-03 13:01:23 -05:00
Chris Cranford
864b87d2e1 DBZ-2982 Suggested changes 2021-02-03 11:45:20 -05:00
Chris Cranford
2631a6de2a DBZ-2982 Fix formatting 2021-02-03 11:45:20 -05:00
mpermar
76a518334a DBZ-2982 Add suffix to log mining properties and proper Duration type 2021-02-03 11:45:20 -05:00
mpermar
26ddfcfec1 DBZ-2982 Remove trailing space
Co-authored-by: Chris Cranford <ccranfor@redhat.com>
2021-02-03 11:45:20 -05:00
mpermar
ca1b85ee05 DBZ-2982 Add some additional logging on sleep time and batch sizing 2021-02-03 11:45:20 -05:00
mpermar
c442f478cb DBZ-2982 Allow to customize log mining properties 2021-02-03 11:45:20 -05:00
Chris Cranford
b0b26e43c8 DBZ-2420 Use custom Oracle connector validation for database.hostname 2021-02-03 11:10:57 -05:00
ani-sha
b430e83dde DBZ-2420 Use database configs from RelationalDatabaseConnectorConfig 2021-02-03 11:10:57 -05:00
Debezium Builder
4c84157e6d [maven-release-plugin] prepare for next development iteration 2021-01-28 07:46:34 -05:00
Debezium Builder
1ba7253981 [maven-release-plugin] prepare release v1.4.1.Final 2021-01-28 07:46:34 -05:00
Jiri Pechanec
57246a246e DBZ-2891 Express send/receive semantics 2021-01-28 10:22:56 +01:00
Jiri Pechanec
7a6b50b1f2 DBZ-2891 Set watermark in the XStream thread 2021-01-28 10:22:56 +01:00
Chris Cranford
dcd2914ab1 DBZ-2891 Added test case 2021-01-28 10:22:56 +01:00
martper2
b9f46af9a2 DBZ-2855 Fix Max SCN 2021-01-27 20:13:16 -05:00
martper2
1de2736249 DBZ-2855: Missing log file error when current SCN is longer than what Long supports 2021-01-27 20:13:16 -05:00
Chris Cranford
10aab1445c DBZ-2733 Fix DecimalMode for Oracle Logminer 2021-01-26 13:08:47 -05:00
Chris Cranford
923c6f9c13 DBZ-2980 Suggested changes 2021-01-26 12:58:50 -05:00
martper2
6bdc20c4bc DBZ-2980 Additional logging for number and type of sql operations 2021-01-26 12:58:50 -05:00
martper2
3727273d9e DBZ-2981 Debezium swallows DML exception in certain cases 2021-01-26 12:53:44 -05:00
Chris Cranford
83fee1cbfc DBZ-2949 Guard against LAST_DDL_TIME with value of 0 2021-01-26 13:55:13 +01:00
Chris Cranford
fcd497557e DBZ-2711 Implement table-level ALL Supplemental Data Logging Validation 2021-01-26 13:53:58 +01:00
Anton Kondratev
c359d2c40e DBZ-2711 Implement only global minimum supplemental logging validation 2021-01-26 13:53:58 +01:00
Chris Cranford
5a7ac0cfe1 DBZ-2518 Implement Scn as a domain type 2021-01-26 13:52:05 +01:00
Chris Cranford
bb24606188 DBZ-2920 Fix Logminer DML operations using continuation 2021-01-26 13:50:41 +01:00
Debezium Builder
25c6e93ed8 [maven-release-plugin] prepare for next development iteration 2021-01-07 03:45:22 -05:00
Debezium Builder
4b6d894af0 [maven-release-plugin] prepare release v1.4.0.Final 2021-01-07 03:45:22 -05:00
Chris Cranford
71437acda4 DBZ-2784 Suggested changes 2021-01-07 09:09:30 +01:00
Chris Cranford
4a63680664 DBZ-2784 Support date columns for Oracle Logminer
This change also corrects the precision of dates emitted when using
the Oracle Logminer adapter so they're identical to Xstreams adapter.
2021-01-07 09:09:30 +01:00
Chris Cranford
f97d643e1c DBZ-2825 Fix test failures 2021-01-06 14:48:04 -05:00
Chris Cranford
7b5f0401c8 DBZ-2825 Suggested changes 2021-01-06 14:15:27 +01:00
Chris Cranford
60e53e561a DBZ-2825 Fix formatting 2021-01-06 14:15:27 +01:00
Chris Cranford
2fc25f9045 DBZ-2825 Change granularity to hours 2021-01-06 14:15:27 +01:00
Chris Cranford
7578da1322 DBZ-2825 Implement log.mining.archive.log.days 2021-01-06 14:15:27 +01:00
Chris Cranford
b0794f33ae DBZ-2825 Fix archive log support for Oracle LogMiner 2021-01-06 14:15:27 +01:00
Jiri Pechanec
a1cfd0b11a DBZ-2890 Remove SLF4J from Oracle distro 2021-01-06 09:35:27 +01:00
Chris Cranford
8d64463e57 DBZ-2849 Fix value conversion with non-compliant Avro column names 2021-01-05 12:43:49 +01:00
Chris Cranford
d0bce38efb DBZ-2859 Fix formatting 2021-01-04 14:00:11 -05:00
martper2
90e41c6fa2 DBZ-2859 Support TNS Names and full RAC connection strings 2021-01-04 13:52:28 -05:00
Chris Cranford
ca83fd0606 DBZ-2856 Fix passing connection adapter to Surefire tests 2020-12-17 11:38:18 +01:00
Debezium Builder
f1f4176f31 [maven-release-plugin] prepare for next development iteration 2020-12-16 14:18:41 -05:00
Debezium Builder
5500847e77 [maven-release-plugin] prepare release v1.4.0.CR1 2020-12-16 14:18:41 -05:00
Debezium Builder
92df4fe5d5 [maven-release-plugin] prepare for next development iteration 2020-12-10 00:35:05 -05:00
Debezium Builder
4022898ccc [maven-release-plugin] prepare release v1.4.0.Beta1 2020-12-10 00:35:05 -05:00
Chris Cranford
10ffaaea57 DBZ-2797 Remove explicitly hardcoded tablespaces 2020-12-09 09:52:17 +01:00
Chris Cranford
61c5fbb45c DBZ-2801 Fix validation 2020-12-08 14:59:27 -05:00
Chris Cranford
848bc2609c DBZ-2801 Only require database.out.server.name for XStreams 2020-12-08 18:04:35 +01:00
Chris Cranford
5d7faf42a9 DBZ-2759 Capture all commit and rollback redo entries
The Oracle LogMiner implementation restricted the COMMIT and ROLLBACK entries
based on a subset of user accounts.  This predicate lead to situations where
some environments using these users experienced lost transactions as they
were captured by the transaction buffer and later abandoned since no matching
commit or rollback was ever detected.

The implementation now processes all COMMIT and ROLLBACK operations to make
sure that the transaction buffer is properly managed.
2020-11-20 07:24:18 +01:00
Chris Cranford
3403aa5a0e DBZ-2763 LogMiner history retention disabled by default 2020-11-20 07:17:46 +01:00
Debezium Builder
2658fa6d5e [maven-release-plugin] prepare for next development iteration 2020-11-16 15:30:33 -05:00
Debezium Builder
23644b0509 [maven-release-plugin] prepare release v1.4.0.Alpha2 2020-11-16 15:30:33 -05:00
Chris Cranford
5abcd4992f DBZ-2729 Suggested changes 2020-11-16 07:27:27 +01:00
Chris Cranford
a9d5985bb0 DBZ-2729 Introduce HistoryRecorder hook for custom implementations 2020-11-16 07:27:27 +01:00
Chris Cranford
4828883861 DBZ-2729 Subtle code polish
* Rework definition of new configuration options
* Add/fix some java documentation
* Use OracleConnection rather than raw JBDC connection for RAC flush connections
2020-11-16 07:27:27 +01:00