diff --git a/debezium-core/src/main/java/io/debezium/transforms/SchemaChangeEventFilter.java b/debezium-core/src/main/java/io/debezium/transforms/SchemaChangeEventFilter.java index ef8598b12..788b6eb15 100644 --- a/debezium-core/src/main/java/io/debezium/transforms/SchemaChangeEventFilter.java +++ b/debezium-core/src/main/java/io/debezium/transforms/SchemaChangeEventFilter.java @@ -33,8 +33,8 @@ public class SchemaChangeEventFilter> implements Transformation { private static final Logger LOGGER = LoggerFactory.getLogger(SchemaChangeEventFilter.class); - private static final Field SCHEMA_CHANGE_EVENT_INCLUDE_LIST = Field.create("schema.change.event.include.list") - .withDisplayName("Schema change event include list") + private static final Field SCHEMA_CHANGE_EVENT_EXCLUDE_LIST = Field.create("schema.change.event.exclude.list") + .withDisplayName("Schema change event exclude list") .withType(ConfigDef.Type.STRING) .withWidth(ConfigDef.Width.SHORT) .withImportance(ConfigDef.Importance.LOW) @@ -49,8 +49,8 @@ public class SchemaChangeEventFilter> implements Tran public void configure(Map configs) { final Configuration config = Configuration.from(configs); smtManager = new SmtManager<>(config); - smtManager.validate(config, Field.setOf(SCHEMA_CHANGE_EVENT_INCLUDE_LIST)); - final String includeSchemaChangeEvents = config.getString(SCHEMA_CHANGE_EVENT_INCLUDE_LIST); + smtManager.validate(config, Field.setOf(SCHEMA_CHANGE_EVENT_EXCLUDE_LIST)); + final String includeSchemaChangeEvents = config.getString(SCHEMA_CHANGE_EVENT_EXCLUDE_LIST); this.includeSchemaChangeEvents = Arrays.stream(includeSchemaChangeEvents.split(",")).map(typeName -> SchemaChangeEvent.SchemaChangeEventType.valueOf(typeName)) .collect(Collectors.toSet()); @@ -85,7 +85,7 @@ public R apply(R record) { @Override public ConfigDef config() { final ConfigDef config = new ConfigDef(); - Field.group(config, null, SCHEMA_CHANGE_EVENT_INCLUDE_LIST); + Field.group(config, null, SCHEMA_CHANGE_EVENT_EXCLUDE_LIST); return config; } diff --git a/debezium-core/src/test/java/io/debezium/transforms/SchemaChangeEventFilterTest.java b/debezium-core/src/test/java/io/debezium/transforms/SchemaChangeEventFilterTest.java index 505e76c23..98ca6437e 100644 --- a/debezium-core/src/test/java/io/debezium/transforms/SchemaChangeEventFilterTest.java +++ b/debezium-core/src/test/java/io/debezium/transforms/SchemaChangeEventFilterTest.java @@ -30,7 +30,7 @@ */ public class SchemaChangeEventFilterTest extends AbstractExtractStateTest { - private static final String SCHEMA_CHANGE_EVENT_INCLUDE_LIST = "schema.change.event.include.list"; + private static final String SCHEMA_CHANGE_EVENT_EXCLUDE_LIST = "schema.change.event.exclude.list"; private static final String SCHEMA_HISTORY_CHANGE_SCHEMA_NAME = "io.debezium.connector.schema.Change"; @Test @@ -38,7 +38,7 @@ public void whenNoDeclaredConfigExceptionIsThrew() { try (SchemaChangeEventFilter transform = new SchemaChangeEventFilter<>()) { final Map props = new HashMap<>(); assertThatThrownBy(() -> transform.configure(props)).isInstanceOf(ConfigException.class).hasMessageContaining( - "Invalid value null for configuration schema.change.event.include.list: The 'schema.change.event.include.list' value is invalid: A value is required"); + "Invalid value null for configuration schema.change.event.exclude.list: The 'schema.change.event.exclude.list' value is invalid: A value is required"); } } @@ -46,7 +46,7 @@ public void whenNoDeclaredConfigExceptionIsThrew() { public void testSchemaChangeContainsEventTypeFilter() { try (SchemaChangeEventFilter transform = new SchemaChangeEventFilter<>()) { final Map props = new HashMap<>(); - props.put(SCHEMA_CHANGE_EVENT_INCLUDE_LIST, "ALTER,CREATE"); + props.put(SCHEMA_CHANGE_EVENT_EXCLUDE_LIST, "ALTER,CREATE"); transform.configure(props); final SourceRecord record = createSchemaChangeRecordContainsEventType(); assertThat(transform.apply(record)); @@ -57,7 +57,7 @@ public void testSchemaChangeContainsEventTypeFilter() { public void testSchemaChangeNonEventTypeFilter() { try (SchemaChangeEventFilter transform = new SchemaChangeEventFilter<>()) { final Map props = new HashMap<>(); - props.put(SCHEMA_CHANGE_EVENT_INCLUDE_LIST, "ALTER,CREATE"); + props.put(SCHEMA_CHANGE_EVENT_EXCLUDE_LIST, "ALTER,CREATE"); transform.configure(props); final SourceRecord record = createSchemaChangeRecordNonEventType(); assertThat(transform.apply(record)).isNull(); @@ -68,7 +68,7 @@ public void testSchemaChangeNonEventTypeFilter() { public void testSchemaChangeNonContainsEventTypeFilter() { try (SchemaChangeEventFilter transform = new SchemaChangeEventFilter<>()) { final Map props = new HashMap<>(); - props.put(SCHEMA_CHANGE_EVENT_INCLUDE_LIST, "ALTER,CREATE"); + props.put(SCHEMA_CHANGE_EVENT_EXCLUDE_LIST, "ALTER,CREATE"); transform.configure(props); final SourceRecord record = createSchemaChangeRecordNonContainsEventType(); assertThat(transform.apply(record)).isNull(); diff --git a/documentation/modules/ROOT/pages/transformations/schema-change-event-filter.adoc b/documentation/modules/ROOT/pages/transformations/schema-change-event-filter.adoc index dd875220b..aa26e9114 100644 --- a/documentation/modules/ROOT/pages/transformations/schema-change-event-filter.adoc +++ b/documentation/modules/ROOT/pages/transformations/schema-change-event-filter.adoc @@ -25,7 +25,7 @@ For example, to filter out `DROP` and `TRUNCATE` from captured DDL event message ---- transforms=filterTableDropAndTruncateEvent transforms.filterTableDropAndTruncateEvent.type=io.debezium.transforms.SchemaChangeEventFilter -transforms.filterTableDropAndTruncateEvent.schema.change.event.include.list=DROP,TRUNCATE +transforms.filterTableDropAndTruncateEvent.schema.change.event.exclude.list=DROP,TRUNCATE ---- The following example shows the changes in the values of event records before and after being filtered by the SchemaChangeEventFilter @@ -130,7 +130,7 @@ The following table lists the configuration options that you can use with the `S |Valid Values |Importance -|[[schema-change-event-filter-include-list]]<> +|[[schema-change-event-exclude-list]]<> |A comma-separated list of schema change events that need to be filtered, set to one or more of the following options: * `CREATE`