New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DBZ-3141 Support for signalling table #2182
Conversation
ace44fe
to
3203a71
Compare
Oracle UX can be improved via debezium/debezium-examples#161 |
58677a8
to
1f07871
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jpechane, a few comments inline. So no usage of that for Oracle DDL changes yet, only the basic infra, right?
.withType(Type.STRING) | ||
.withWidth(Width.MEDIUM) | ||
.withImportance(Importance.MEDIUM) | ||
.withDescription("The name of the data collection that is used to send signlas/commands to Debezium. Signaling is disabled when not set."); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
.withDescription("The name of the data collection that is used to send signlas/commands to Debezium. Signaling is disabled when not set."); | |
.withDescription("The name of the data collection that is used to send signals/commands to Debezium. Signaling is disabled when not set."); |
debezium-core/src/main/java/io/debezium/config/CommonConnectorConfig.java
Show resolved
Hide resolved
private final CommonConnectorConfig connectorConfig; | ||
private final String signalDataCollectionId; | ||
|
||
private final Map<String, Action> signalActions = new HashMap<>(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this accessed concurrently? Let's add some @ThreadSafe
etc. annotations.
Even the default logging action
What is this exactly?
… |
@gunnarmorling https://github.com/debezium/debezium/pull/2182/files#diff-b20c37494fe1f155bb2197d5d428273e45bbd39e90ea937f52de1860f4aa6dbb Oracle and Postgres are already in |
Ok, so _why_ would a user want to use it? What's the benefit/purpose?
… |
@jpechane, ok, so what's the purpose of using the signal table for Postgres? |
@gunnarmorling The prupose is twofold
|
Ah, gotcha. So we amend the schema evolution story for PG, too. Ok, can you then amend the documentation accordingly, too? |
@gunnarmorling Could you please merge the PR and I'll post the docs in a separate one so we can get tests passing again? |
@jpechane, are you still planning to push a commit with doc updates for this one? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, great work. I'll apply that one JavaDoc fix and merge. Thanks a lot, @jpechane!
import io.debezium.util.Testing; | ||
|
||
/** | ||
* Integration test to check transaction metadata. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copy/paste glitch?
TestHelper.execute(INSERT_STMT); | ||
|
||
// Insert the signal record - add 'aa' column to PK fields | ||
TestHelper.execute("INSERT INTO s1.debezium_signal VALUES('1', 'schema-changes', '{\"database\": \"postgres\", \"changes\": [{\n" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wish we'd use Java 13+ and its test blocks for tests...
https://issues.redhat.com/browse/DBZ-3141
Vitess failure handled in debezium/debezium-connector-vitess#27