Commit Graph

1763 Commits

Author SHA1 Message Date
Vojtech Juranek
33c8430a84 DBZ-7356 Update comment to include relevant DBZ issue 2024-01-17 09:45:43 +01:00
Vojtech Juranek
5ca719d1d0 DBZ-7355 Skip Avro serialization validation
Test fails due to bug in Apicurio
https://github.com/Apicurio/apicurio-registry/issues/2980
2024-01-17 09:45:43 +01:00
Peter Hamer
e2c0a59ec3 DBZ-7347 Update notification tests. 2024-01-17 09:42:27 +01:00
Jakub Cechacek
5dbe073d3b DBZ-7260 Offset value conversion extracted into common util class 2024-01-11 09:58:24 +01:00
mfvitale
20fbe73bc8 DBZ-7311 Use a more meaningful name for identify an on demand blocking snapshot 2024-01-08 12:52:03 +01:00
mfvitale
47cbdee526 DBZ-7311 Permits to execute a blocking snapshot even if snapshot.mode=never 2024-01-08 12:52:03 +01:00
Mickael Maison
70e7186868 DBZ-7298 Add service loader manifests for all Connect plugins
Add manifests for source/sink connectors, converters and transformations.
2024-01-04 09:22:29 +01:00
Debezium Builder
3853d20f44 [maven-release-plugin] prepare for next development iteration 2023-12-21 06:52:01 +00:00
Debezium Builder
5d35e9caaa [maven-release-plugin] prepare release v2.5.0.Final 2023-12-21 06:52:01 +00:00
ani-sha
4b36ed9975 DBZ-7177 DBZ-6764 Use correct context name and add suggestions for code review 2023-12-20 08:56:56 +01:00
ani-sha
5a27d42257 DBZ-7177 Add isStreaming check for all tests, remove unused files 2023-12-20 08:56:56 +01:00
rkerner
e06f96f339 DBZ-6764 Fix waitForStreamingRunning/isStreamingRunning 2023-12-20 08:56:56 +01:00
ani-sha
a12b1a9872 DBZ-6764 Connector metrics implementation for REST extension 2023-12-20 08:56:56 +01:00
ani-sha
5841eacb79 DBZ-7177 Wait for streaming, adjust test cases 2023-12-20 08:56:56 +01:00
ani-sha
e535e5b78d DBZ-7177 Add suggestions from code review, adjust code style changes 2023-12-20 08:56:56 +01:00
ani-sha
2555a1cee2 DBZ-6764 DBZ-7178 DBZ-7177 Use MBeanServer to query metrics for REST endpoint and create new metrics descriptor 2023-12-20 08:56:56 +01:00
ani-sha
2165d9bed1 DBZ-6764 Connector metrics implementation for REST extension 2023-12-20 08:56:56 +01:00
Roman Kudryashov
516aa87fad DBZ-7235 Add option to customize CloudEvents schema name 2023-12-20 06:53:37 +01:00
Jiri Pechanec
7354f7aa38 DBZ-7251 Enable fitering of MySQL connector 2023-12-19 17:29:37 +01:00
“vsantonastaso”
9dac11e1cd DBZ-7164 Support offset commit for the signal topic 2023-12-19 15:51:10 +01:00
harveyyue
225277c5c0 DBZ-7251 Return generic DataCollectionId instead of REST response DataCollection in getMatchingCollections method 2023-12-19 12:53:57 +01:00
harveyyue
4719396ffc DBZ-7145 Introduce a common parent connect for all Debezium source connectors 2023-12-19 12:53:57 +01:00
harveyyue
5553059fb8 DBZ-7167 Provide a public API from the connector implementations to retrieve the list of matching collections or tables based on the different include-/exclude lists 2023-12-19 12:53:57 +01:00
Vojtech Juranek
37ebb8ecae DBZ-7275 Close connection registerd with bean registry
New connection created for bean registry is never closed. Close it
during when stopping the task.
2023-12-19 10:22:02 +01:00
Debezium Builder
2c1def7241 [maven-release-plugin] prepare for next development iteration 2023-12-14 09:43:13 +00:00
Debezium Builder
ef8260f802 [maven-release-plugin] prepare release v2.5.0.CR1 2023-12-14 09:43:12 +00:00
Chris Cranford
2b02b3982e DBZ-4321 Rework configuration options 2023-12-13 11:27:40 -05:00
Chris Cranford
22a22d65d1 DBZ-4321 Pull getQualifiedTableName up to AbstractConnectorConnection 2023-12-13 11:27:40 -05:00
Chris Cranford
ada157d117 DBZ-4321 Introduce BeanRegistry and ServiceRegistry
As a part of this work to handle injection in a cleaner way, this commit
adds two new broad concepts called `BeanRegistry` and `ServiceRegistry`.

A BeanRegistry is a glorified registry of different objects that are not
necessarily services but may be desired by a service. This contract will
allow Debezium to integrate in the future with other CDI providers.

A ServiceRegistry is more of an internal concept, where various systems
can be started based on their dependency order and provides a universal
way to split larger parts of the code into smaller, focused modules that
can be accessed using the Service Locator pattern.
2023-12-13 11:27:40 -05:00
Chris Cranford
26b3881941 DBZ-4321 Add MongoDB hook & polish injection handler 2023-12-13 11:27:40 -05:00
Chris Cranford
59027ed5ed DBZ-4321 New PostProcessor contract and Column Reselection 2023-12-13 11:27:40 -05:00
harveyyue
c5ce1cf945 DBZ-7251 Length value is not removed when changing a column's type 2023-12-12 10:18:21 +01:00
gongzhongqiang
018ecfe9f6 [polish] remove redundant Geometry type checking code 2023-12-08 10:16:46 +01:00
mfvitale
f275b1172c DBZ-6834 Disable signal based watermarking tests on ReadOnlyIncrementalSnapshotIT 2023-12-06 14:10:26 +01:00
mfvitale
ee0a55a19c DBZ-6834 Disable signal based watermarking tests on ReadOnlyIncrementalSnapshotIT 2023-12-06 14:10:26 +01:00
Jiabao Sun
d740bf52dd DBZ-7230 MySQL BIT Type should have a default length 1 2023-12-06 07:15:26 +01:00
Debezium Builder
0fd1c0dc9a [maven-release-plugin] prepare for next development iteration 2023-12-04 13:55:35 +00:00
Debezium Builder
3e2d75f0da [maven-release-plugin] prepare release v2.5.0.Beta1 2023-12-04 13:55:35 +00:00
Lourens Naude
ae25b3a11a DBZ-7183 Support MySQL 8 high resolution replication timestamps from GTID events 2023-11-30 20:30:12 -05:00
Lourens Naude
baa2ea1e0f DBZ-7183 Remove dead code: setBinlogTimestampSeconds and getBinlogTimestampSeconds 2023-11-30 20:30:12 -05:00
“vsantonastaso”
8c1c369449 DBZ-6878 add table specific notification in initial snapshot 2023-11-29 08:32:21 +01:00
rkerner
fe0b83e7fb DBZ-7179 Fix DebeziumMySqlConnectorResource not using the new MySQL adatper structure to support different MySQL flavors
closes to https://issues.redhat.com/browse/DBZ-7179
2023-11-24 07:15:08 +01:00
Chris Cranford
1ce4ebd668 DBZ-1482 Fix for mismatch source query during incremental snapshots 2023-11-23 13:54:53 +01:00
Chris Cranford
3c3bd504c8 DBZ-1482 Add some logging for test failure 2023-11-23 13:54:53 +01:00
Chris Cranford
b4790b36f3 DBZ-1482 Disable purged GTID tests for MariaDB - not applicable 2023-11-23 13:54:53 +01:00
Chris Cranford
8ca62c961c DBZ-1482 Fix read-only incremental snapshot failures 2023-11-23 13:54:53 +01:00
Chris Cranford
e722845717 DBZ-1482 Don't initiate a transaction for every MariaDB GTID event.
There are use cases where MariaDB will send a GTID event to start a
transaction but that event will not conclude with a COMMIT and in
those cases, don't start a buffer transaction boundary.
2023-11-23 13:54:53 +01:00
Chris Cranford
25a68ba3ef DBZ-1482 Fix MariaDB EventBuffer warnings 2023-11-23 13:54:53 +01:00
Chris Cranford
f5b0084216 DBZ-1482 Initial MariaDB GTID support 2023-11-23 13:54:53 +01:00
Chris Cranford
ebf940b1ad DBZ-1482 Add MariaDB gtid replica bits 2023-11-23 13:54:53 +01:00
Chris Cranford
1deb01fd33 DBZ-7083 Relax REST extension validation 2023-11-23 13:54:53 +01:00
Chris Cranford
1d6a1ec6c1 DBZ-7083 Introduce strategy for MySQL and MariaDB 2023-11-23 13:54:53 +01:00
rkerner
aeaba3ae70 DBZ-6762 Add "validate filters" endpoint/s for connector-specific Connect REST Extensions
closes to https://issues.redhat.com/browse/DBZ-6762
2023-11-22 06:10:40 +01:00
Jiri Pechanec
31c343d00b DBZ-7093 Code formatting 2023-11-15 12:59:54 +01:00
nicholas-fwang
7051f35bdf DBZ-7093 fix checkstyle 2023-11-15 12:59:54 +01:00
nicholas-fwang
892dec2240 DBZ-7093 Check schema length to find missed DDL by SQL_BIN_LOG=OFF 2023-11-15 12:59:54 +01:00
Chris Cranford
74878523c7 DBZ-7135 Run MySQL CI configurations concurrently on GitHub 2023-11-13 19:16:57 -05:00
Debezium Builder
1521445908 [maven-release-plugin] prepare for next development iteration 2023-11-10 10:26:05 +00:00
Debezium Builder
6c6f6e9138 [maven-release-plugin] prepare release v2.5.0.Alpha2 2023-11-10 10:26:05 +00:00
Chris Cranford
da9c2bfeb4 DBZ-7085 Fix default value handling in tests 2023-11-09 10:00:33 +01:00
Chris Cranford
2bff852174 DBZ-7085 Fix temporal reader MariaDB implementation 2023-11-09 10:00:33 +01:00
Chris Cranford
8ff03447e4 DBZ-7085 Implement simple MariaDB protocol field reader 2023-11-09 10:00:33 +01:00
Chris Cranford
35a536aefc DBZ-7085 Apply MariaDB unique fetchSize requirements
Per https://jira.mariadb.org/browse/CONJ-977, the MariaDB team does not
believe that the Integer.MIN_VALUE solution for triggering streaming is
spec compliant and as of MariaDB 3.x+ drivers, they explicitly will not
allow this.

This change explicitly sets the fetchSize to 1 to mimic the same style
of behavior that the default fetchSize uses when using MySQL. If a user
provides a custom fetchSize, that will take precedences.
2023-11-09 10:00:33 +01:00
Chris Cranford
b849effaf9 DBZ-7085 Add MariaDB and use it with MariaDB profile 2023-11-09 10:00:33 +01:00
Chris Cranford
0f4d2f2b1a DBZ-7085 Fix test suite to protocol-based factory URL 2023-11-09 10:00:33 +01:00
ani-sha
700942b258 DBZ-6874 Drop MySQL 5.7, test MySQL 8.0 & adjust documentation 2023-11-09 09:26:26 +01:00
ani-sha
16ab761bed DBZ-6873 Deprecate expire_logs_days, use binlog_expire_logs_seconds 2023-11-08 07:06:27 +01:00
ani-sha
e7a9430de3 DBZ-6873 Support MySQL 8.2 2023-11-08 07:06:27 +01:00
ani-sha
54be3bb663 DBZ-6873 Use percona server version 8.0 2023-11-08 07:06:27 +01:00
ani-sha
519c382153 DBZ-6873 Support MySQL 8.1 2023-11-08 07:06:27 +01:00
Debezium Builder
78c5204444 [maven-release-plugin] prepare for next development iteration 2023-10-26 15:39:35 +00:00
Debezium Builder
356e488e83 [maven-release-plugin] prepare release v2.5.0.Alpha1 2023-10-26 15:39:35 +00:00
Chris Cranford
b9e4abdf06 DBZ-2913 Rearrange logging rules 2023-10-26 13:03:03 +02:00
Chris Cranford
0ab2d8d93c DBZ-2913 Add mariadb-ssl profile, fix init script execution order 2023-10-26 13:03:03 +02:00
Chris Cranford
a7989379c1 DBZ-2913 Add mariadb profile and GitHub check for MariaDB 2023-10-26 13:03:03 +02:00
Chris Cranford
cec5b67c5a DBZ-2913 Cleanup test suite connection leak 2023-10-26 13:03:03 +02:00
Chris Cranford
dcce6f61f5 DBZ-2913 Use new configurable MariaDB capabilities API 2023-10-26 13:03:03 +02:00
Chris Cranford
ef2e7b3c8f DBZ-2913 Disable JSON test, MariaDB handles JSON differnetly 2023-10-26 13:03:03 +02:00
Chris Cranford
af78ff3fb2 DBZ-2913 MariaDB image has SSL out of the box 2023-10-26 13:03:03 +02:00
Chris Cranford
42c9290038 DBZ-2913 Introduce SkipWhenDatabaseIs annotation 2023-10-26 13:03:03 +02:00
Chris Cranford
e3c98c47f7 DBZ-2913 Revert Align binlog client behavior to streaming source
The changes in this test were meant to remain local under the binlog
client new version was made available by the author.
2023-10-26 13:03:03 +02:00
Chris Cranford
e97f221bd3 DBZ-2913 Align binlog client behavior to streaming source 2023-10-26 13:03:03 +02:00
Chris Cranford
54f8f4636b DBZ-2913 Fix failure due to log verbosity change 2023-10-26 13:03:03 +02:00
Chris Cranford
1ed77cd2ed DBZ-2913 Reduce MySQL log verbosity 2023-10-26 13:03:03 +02:00
Chris Cranford
15ca23bff8 DBZ-2913 Fix GTID-based tests with no GTID enabled for MariaDB 2023-10-26 13:03:03 +02:00
Chris Cranford
ffe1824772 DBZ-2913 Fix binlog compression for MariaDB 2023-10-26 13:03:03 +02:00
Chris Cranford
f5313cd525 DBZ-2913 More various test fixes for MariaDB 2023-10-26 13:03:03 +02:00
Chris Cranford
498409dcb6 DBZ-2913 Fix more precision test failures 2023-10-26 13:03:03 +02:00
Chris Cranford
5069d78a02 DBZ-2913 Fix more precision test failures 2023-10-26 13:03:03 +02:00
Chris Cranford
3aeb84ace8 DBZ-2913 Fix some time precision failures
MySQL rounds precision up to match a column's precision when the precision is
smaller than the time value whereas MariaDB truncates by default. This can be
influenced on the MariaDB side by using `TIME_ROUND_FRACTIONAL` to avoid the
truncation.

In this commit, I've aligned the tests to MariaDB's default behavior.
2023-10-26 13:03:03 +02:00
Chris Cranford
b43a591419 DBZ-2913 Support MySQL and MariaDB image log init patterns 2023-10-26 13:03:03 +02:00
Chris Cranford
2a153cca62 DBZ-2913 Support binlog_annotate_row_events
MySQL supports an option called binlog_rows_query_log_events; however, MariaDB
supports a different option called binlog_annotate_row_events. This feature is
to add MariaDB's equivalent so that it acts the same as the original MySQL
option.
2023-10-26 13:03:03 +02:00
sean
6f04e9ce52 DBZ-7037 code-formatter 2023-10-25 10:48:10 +02:00
sean
a23f41a1b2 DBZ-7037 Fake Rotates Event skip tableMapEventByTableId clear
Fake Rotate Event
2023-10-25 10:48:10 +02:00
Roman Kudryashov
215f3098b7 DBZ-7016 Refactoring 2023-10-19 11:35:18 +02:00
Roman Kudryashov
ee64c70546 DBZ-7016 id and type of a CloudEvent can be retrieved from headers 2023-10-19 11:35:18 +02:00
Jiri Pechanec
cb093057c2 DBZ-7042 Use 8.0 in docs 2023-10-17 13:09:52 +02:00
ani-sha
07c1c0b0ad DBZ-7042 Use mysql server image tag for docker/oracle hub 2023-10-17 13:09:52 +02:00
ani-sha
a72a15fef6 DBZ-7042 Use oracle container registry for MySQL images 2023-10-17 13:09:52 +02:00
mfvitale
db4babbdb4 DBZ-7035 Remove wrong test log configuration 2023-10-17 11:28:53 +02:00
mfvitale
24f1c5322b DBZ-7035 MySqlStreamingChangeEventSource will effectively stop during blocking snapshot 2023-10-17 11:28:53 +02:00
Roman Kudryashov
01485aceb3 DBZ-6982 Provide configuration option to exclude extension attributes from a CloudEvent 2023-10-04 13:58:53 +02:00
Debezium Builder
40a8f4026d [maven-release-plugin] prepare for next development iteration 2023-10-03 14:18:54 +00:00
Debezium Builder
412c6f7979 [maven-release-plugin] prepare release v2.4.0.Final 2023-10-03 14:18:54 +00:00
Roman Kudryashov
98c426dec4 DBZ-3642 CloudEventsConverter can retrieve metadata info from headers 2023-09-26 13:06:09 +02:00
Debezium Builder
cc1de0aa51 [maven-release-plugin] prepare for next development iteration 2023-09-22 09:00:45 +00:00
Debezium Builder
6809978083 [maven-release-plugin] prepare release v2.4.0.CR1 2023-09-22 09:00:45 +00:00
mfvitale
b4661881c9 DBZ-6945 Remove Table object for DROP schema event 2023-09-21 13:32:38 +02:00
rkerner
6d3528d4fb DBZ-4395 Add connector specific Debezium Connect REST Extension/s and move logic from UI backend to the Debezium Connect REST Extension (part 2 of the re-architecturing/re-factoring)
DBZ-6761 Add "validate connection" endpoints in connector specific Connect REST extensions

closes to https://issues.redhat.com/browse/DBZ-4395
closes to https://issues.redhat.com/browse/DBZ-6761
2023-09-21 13:29:59 +02:00
mfvitale
68eb4b2df2 DBZ-6828 Process drop table events during blocking snapshot 2023-09-20 08:18:33 +02:00
mfvitale
ae199d2053 DBZ-6828 Blocking snapshot will generate schema events only for signaled tables 2023-09-20 08:18:33 +02:00
mfvitale
19ee1070f5 DBZ-6937 Incremental snapshot context is initialized in processSchemaChange method to avoid NPE when no context from initial snapshot exists 2023-09-20 08:14:36 +02:00
Debezium Builder
65169a9315 [maven-release-plugin] prepare for next development iteration 2023-09-13 09:41:46 +00:00
Debezium Builder
845e3e9d09 [maven-release-plugin] prepare release v2.4.0.Beta2 2023-09-13 09:41:46 +00:00
harveyyue
fe300784b0 DBZ-6865 Avoid getting NPE when executing the arrived method in ExecuteSnapshot 2023-09-04 08:59:31 +02:00
Debezium Builder
d97a18e8dc [maven-release-plugin] prepare for next development iteration 2023-08-29 11:41:08 +00:00
Debezium Builder
5ce25f2cfe [maven-release-plugin] prepare release v2.4.0.Beta1 2023-08-29 11:41:08 +00:00
Hang Ruan
43a86b2a46 DBZ-6824 fix review and enrich tests 2023-08-24 16:09:22 -04:00
Hang Ruan
99e9a1f880 DBZ-6824 trim default value for the BIGINT and SMALLINT types when parsing MySQL DDL 2023-08-24 16:09:22 -04:00
mfvitale
542b3619fa DBZ-6731 Blocking snapshot takes configuration from signal payload 2023-08-15 12:43:43 +02:00
Jiri Novotny
b0be5b4808 DBZ-6791 Set ssl mode to disabled in pom.xml 2023-08-15 06:20:32 +02:00
Jiri Novotny
ef404bd1cd DBZ-6791 Disable default ssl in tests 2023-08-15 06:20:32 +02:00
Stein Rolevink
80b1518057 DBZ-6786 Add checks to TransactionPayloadIT 2023-08-14 17:24:38 +02:00
Stein Rolevink
5e2f115959 DBZ-6786 Use custom row deserializers in case of binlog compression 2023-08-14 17:24:38 +02:00
Debezium Builder
3c72f071b0 [maven-release-plugin] prepare for next development iteration 2023-08-09 10:33:06 +00:00
Debezium Builder
915c465440 [maven-release-plugin] prepare release v2.4.0.Alpha2 2023-08-09 10:33:06 +00:00
Jiri Pechanec
9f3d401926 DBZ-6783 Reformat code 2023-08-09 10:44:39 +02:00
Ryan van Huuksloot
4f49d2f6fe DBZ-6783 Upgrade MySQL Binlog Client to v0.28.1 2023-08-09 10:44:39 +02:00
Gurps Bassi
f4c029f5d1 DBZ-6727 use correct config for driver 2023-08-03 11:53:50 +02:00
mfvitale
61651a94b5 DBZ-6566 Force blocking snapshot even if a snapshot has already executed 2023-08-03 09:22:24 +02:00
mfvitale
def7379a0d DBZ-6566 Support Blocking snapshot for MySQL 2023-08-03 09:22:24 +02:00
Jiri Pechanec
3212f3e919 DBZ-6714 Tested field is mandatory 2023-07-25 17:51:44 +02:00
Nikhil Benesch
8ba637f3be DBZ-6714 Set precision of MySQL unsigned bigints in output decimal type
When using the "precise" configuration for
`bigint.unsigned.handling.mode`, the output decimal types were not
specifying a precision. Adjust the code to generate an Avro schema with
a decimal precision of 20, which is sufficient to represent all possible
unsigned bigints.
2023-07-25 17:51:44 +02:00
jcechace
699a1612ae DBZ-6670 Replace error handler instead of recreate in order to keep retry counter 2023-07-25 13:46:56 +02:00
Debezium Builder
267dfda8a6 [maven-release-plugin] prepare for next development iteration 2023-07-17 10:40:52 +00:00
Debezium Builder
0d3cef6a29 [maven-release-plugin] prepare release v2.4.0.Alpha1 2023-07-17 10:40:52 +00:00
jcechace
318c55cc74 DBZ-6659 Fixing junit dependencies 2023-07-14 09:11:10 +02:00
harveyyue
e3f684170e DBZ-6472 MySqlSnapshotChangeEventSource parallel execute createSchemaEventsForTables 2023-07-13 13:21:59 +02:00
harveyyue
5bc7fd1f7c DBZ-6603 Support for custom tags in the connector metrics 2023-07-13 09:52:33 +02:00
jcechace
5cb579bf12 DBZ-6525 Removing runtime dependency on core for testcontainers module in order to prevent logback.xml downstream conflicts 2023-07-11 12:07:04 +02:00
mfvitale
d5febcc054 DBZ-6417 Provide extensible signal action mechanism through SPI 2023-06-23 15:03:27 +02:00
mfvitale
9ed928a1c9 DBZ-6416 Improve tests stability 2023-06-22 13:22:34 +02:00
mfvitale
34e28ac52d DBZ-6416 Add initial snapshot notifications 2023-06-22 13:22:34 +02:00
Debezium Builder
60f730d383 [maven-release-plugin] prepare for next development iteration 2023-06-20 13:21:31 +00:00
Debezium Builder
150396e4c8 [maven-release-plugin] prepare release v2.3.0.Final 2023-06-20 13:21:31 +00:00
kate
a06db8d2e5 DBZ-6570 Fix ConcurrentModificationException in KafkaSignal 2023-06-20 08:55:48 +02:00
mfvitale
043e4da49a DBZ-6534 Adjust testNationalizedCharacterDataTypeMappings to be compatible with both MySQL 5.7 and 8.0 2023-06-19 07:50:17 +02:00
Jiri Pechanec
7e6c2ea75d DBZ-6533 Disable test in parallel setup 2023-06-15 17:33:19 +02:00
Jiri Pechanec
067683e56a DBZ-6076 Consistent config for all connectors 2023-06-15 11:55:28 +02:00
Anil Dasari
0431a8b9fc DBZ-6076: Add support for custom SourceInfoStructMaker for adding new fields to source field 2023-06-15 11:55:28 +02:00