DBZ-602 Typo fixes; adding a few test assertions
This commit is contained in:
parent
c11875994a
commit
f055020613
@ -793,8 +793,9 @@ public static EventProcessingFailureHandlingMode parse(String value) {
|
||||
+ "while the database schemas and other metadata are being read. The remaining work in a snapshot involves selecting all rows from "
|
||||
+ "each table, and this can be done using the snapshot process' REPEATABLE READ transaction even when the lock is no longer held and "
|
||||
+ "other operations are updating the database. However, in some cases it may be desirable to block all writes for the entire duration "
|
||||
+ "of the snapshot; in such cases set this property to 'extended'. Using a value 'none' will prevent the connector from acquiring any "
|
||||
+ "table locks during the snapshot process. This mode can only be used in combination with snapshot.mode values of 'schema_only' or 'schema_only_recovery'.")
|
||||
+ "of the snapshot; in such cases set this property to 'extended'. Using a value of 'none' will prevent the connector from acquiring any "
|
||||
+ "table locks during the snapshot process. This mode can only be used in combination with snapshot.mode values of 'schema_only' or "
|
||||
+ "'schema_only_recovery' and is only safe to use if no schema changes are happening while the snapshot is taken.")
|
||||
.withValidation(MySqlConnectorConfig::validateSnapshotLockingMode);
|
||||
|
||||
public static final Field TIME_PRECISION_MODE = Field.create("time.precision.mode")
|
||||
@ -930,7 +931,7 @@ public static final Field MASK_COLUMN(int length) {
|
||||
public MySqlConnectorConfig(Configuration config) {
|
||||
super(config);
|
||||
|
||||
// If deprectated snapshot.minimal.locking property is explicitly configured
|
||||
// If deprecated snapshot.minimal.locking property is explicitly configured
|
||||
if (config.hasKey(MySqlConnectorConfig.SNAPSHOT_MINIMAL_LOCKING.name())) {
|
||||
// Coerce it into its replacement appropriate snapshot.locking.mode value
|
||||
if (config.getBoolean(MySqlConnectorConfig.SNAPSHOT_MINIMAL_LOCKING)) {
|
||||
|
@ -16,7 +16,6 @@
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import io.debezium.connector.mysql.MySqlConnectorConfig.SnapshotLockingMode;
|
||||
import org.apache.kafka.common.config.Config;
|
||||
import org.apache.kafka.connect.data.Struct;
|
||||
import org.apache.kafka.connect.errors.DataException;
|
||||
@ -28,6 +27,7 @@
|
||||
import io.debezium.config.CommonConnectorConfig;
|
||||
import io.debezium.config.Configuration;
|
||||
import io.debezium.connector.mysql.MySqlConnectorConfig.SecureConnectionMode;
|
||||
import io.debezium.connector.mysql.MySqlConnectorConfig.SnapshotLockingMode;
|
||||
import io.debezium.connector.mysql.MySqlConnectorConfig.SnapshotMode;
|
||||
import io.debezium.data.Envelope;
|
||||
import io.debezium.doc.FixFor;
|
||||
@ -238,6 +238,7 @@ public void shouldValidateAcceptableConfiguration() {
|
||||
* and its replacement snapshot.locking.mode is not explicitly defined, configuration validates as acceptable.
|
||||
*/
|
||||
@Test
|
||||
@FixFor("DBZ-602")
|
||||
public void shouldValidateLockingModeWithMinimalLocksEnabledConfiguration() {
|
||||
Configuration config = DATABASE.defaultJdbcConfigBuilder()
|
||||
.with(MySqlConnectorConfig.SSL_MODE, SecureConnectionMode.DISABLED)
|
||||
@ -253,13 +254,16 @@ public void shouldValidateLockingModeWithMinimalLocksEnabledConfiguration() {
|
||||
MySqlConnector connector = new MySqlConnector();
|
||||
Config result = connector.validate(config.asMap());
|
||||
assertNoConfigurationErrors(result, MySqlConnectorConfig.SNAPSHOT_LOCKING_MODE);
|
||||
|
||||
assertThat(new MySqlConnectorConfig(config).getSnapshotLockingMode()).isEqualTo(SnapshotLockingMode.MINIMAL);
|
||||
}
|
||||
|
||||
/**
|
||||
* Validates that if you use the deprecated snapshot.minimal.locking configuration value is set to fa;se
|
||||
* Validates that if you use the deprecated snapshot.minimal.locking configuration value is set to false
|
||||
* and its replacement snapshot.locking.mode is not explicitly defined, configuration validates as acceptable.
|
||||
*/
|
||||
@Test
|
||||
@FixFor("DBZ-602")
|
||||
public void shouldValidateLockingModeWithOutMinimalLocksEnabledConfiguration() {
|
||||
Configuration config = DATABASE.defaultJdbcConfigBuilder()
|
||||
.with(MySqlConnectorConfig.SSL_MODE, SecureConnectionMode.DISABLED)
|
||||
@ -275,6 +279,8 @@ public void shouldValidateLockingModeWithOutMinimalLocksEnabledConfiguration() {
|
||||
MySqlConnector connector = new MySqlConnector();
|
||||
Config result = connector.validate(config.asMap());
|
||||
assertNoConfigurationErrors(result, MySqlConnectorConfig.SNAPSHOT_LOCKING_MODE);
|
||||
|
||||
assertThat(new MySqlConnectorConfig(config).getSnapshotLockingMode()).isEqualTo(SnapshotLockingMode.EXTENDED);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -282,6 +288,7 @@ public void shouldValidateLockingModeWithOutMinimalLocksEnabledConfiguration() {
|
||||
* AND set its replacement snapshot.locking.mode an error will be generated.
|
||||
*/
|
||||
@Test
|
||||
@FixFor("DBZ-602")
|
||||
public void shouldFailToValidateConflictingLockingModeConfiguration() {
|
||||
Configuration config = DATABASE.defaultJdbcConfigBuilder()
|
||||
.with(MySqlConnectorConfig.SSL_MODE, SecureConnectionMode.DISABLED)
|
||||
@ -306,6 +313,7 @@ public void shouldFailToValidateConflictingLockingModeConfiguration() {
|
||||
* AND set its replacement snapshot.locking.mode an error will be generated.
|
||||
*/
|
||||
@Test
|
||||
@FixFor("DBZ-602")
|
||||
public void shouldFailToValidateConflictingLockingModeExtendedConfiguration() {
|
||||
Configuration config = DATABASE.defaultJdbcConfigBuilder()
|
||||
.with(MySqlConnectorConfig.SSL_MODE, SecureConnectionMode.DISABLED)
|
||||
@ -330,6 +338,7 @@ public void shouldFailToValidateConflictingLockingModeExtendedConfiguration() {
|
||||
* AND set its replacement snapshot.locking.mode an error will be generated.
|
||||
*/
|
||||
@Test
|
||||
@FixFor("DBZ-602")
|
||||
public void shouldFailToValidateConflictingLockingModeNoneConfiguration() {
|
||||
Configuration config = DATABASE.defaultJdbcConfigBuilder()
|
||||
.with(MySqlConnectorConfig.SSL_MODE, SecureConnectionMode.DISABLED)
|
||||
@ -354,6 +363,7 @@ public void shouldFailToValidateConflictingLockingModeNoneConfiguration() {
|
||||
* 'none', 'schema_only', 'schema_only_recovery'
|
||||
*/
|
||||
@Test
|
||||
@FixFor("DBZ-602")
|
||||
public void shouldValidateLockingModeNoneWithValidSnapshotModeConfiguration() {
|
||||
final List<String> acceptableValues = Arrays.asList(
|
||||
SnapshotMode.NEVER.getValue(),
|
||||
@ -379,6 +389,8 @@ public void shouldValidateLockingModeNoneWithValidSnapshotModeConfiguration() {
|
||||
MySqlConnector connector = new MySqlConnector();
|
||||
Config result = connector.validate(config.asMap());
|
||||
assertNoConfigurationErrors(result, MySqlConnectorConfig.SNAPSHOT_LOCKING_MODE);
|
||||
|
||||
assertThat(new MySqlConnectorConfig(config).getSnapshotLockingMode()).isEqualTo(SnapshotLockingMode.NONE);
|
||||
}
|
||||
}
|
||||
|
||||
@ -387,6 +399,7 @@ public void shouldValidateLockingModeNoneWithValidSnapshotModeConfiguration() {
|
||||
* 'when_needed', 'initial', 'initial_recovery'
|
||||
*/
|
||||
@Test
|
||||
@FixFor("DBZ-602")
|
||||
public void shouldNotValidateLockingModeNoneWithInvalidSnapshotModeConfiguration() {
|
||||
final List<String> invalidValues = Arrays.asList(
|
||||
SnapshotMode.WHEN_NEEDED.getValue(),
|
||||
|
Loading…
Reference in New Issue
Block a user