DBZ-1247 Making defaultSnapshotFetchSize() abstract

This commit is contained in:
Gunnar Morling 2019-04-30 09:52:37 +02:00
parent 72b06366fe
commit a84230447e
2 changed files with 20 additions and 18 deletions

View File

@ -10,34 +10,33 @@
import java.util.Map;
import java.util.concurrent.TimeUnit;
import io.debezium.config.CommonConnectorConfig;
import io.debezium.config.Configuration;
import io.debezium.config.EnumeratedValue;
import io.debezium.config.Field;
import io.debezium.connector.postgresql.snapshot.AlwaysSnapshotter;
import io.debezium.connector.postgresql.snapshot.InitialOnlySnapshotter;
import io.debezium.connector.postgresql.snapshot.InitialSnapshotter;
import io.debezium.connector.postgresql.snapshot.NeverSnapshotter;
import io.debezium.connector.postgresql.spi.Snapshotter;
import org.apache.kafka.common.config.ConfigDef;
import org.apache.kafka.common.config.ConfigDef.Importance;
import org.apache.kafka.common.config.ConfigDef.Type;
import org.apache.kafka.common.config.ConfigDef.Width;
import org.apache.kafka.common.config.ConfigValue;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import io.debezium.config.CommonConnectorConfig;
import io.debezium.config.Configuration;
import io.debezium.config.EnumeratedValue;
import io.debezium.config.Field;
import io.debezium.connector.postgresql.connection.MessageDecoder;
import io.debezium.connector.postgresql.connection.ReplicationConnection;
import io.debezium.connector.postgresql.connection.pgproto.PgProtoMessageDecoder;
import io.debezium.connector.postgresql.connection.wal2json.NonStreamingWal2JsonMessageDecoder;
import io.debezium.connector.postgresql.connection.wal2json.StreamingWal2JsonMessageDecoder;
import io.debezium.connector.postgresql.snapshot.AlwaysSnapshotter;
import io.debezium.connector.postgresql.snapshot.InitialOnlySnapshotter;
import io.debezium.connector.postgresql.snapshot.InitialSnapshotter;
import io.debezium.connector.postgresql.snapshot.NeverSnapshotter;
import io.debezium.connector.postgresql.spi.Snapshotter;
import io.debezium.heartbeat.Heartbeat;
import io.debezium.jdbc.JdbcConfiguration;
import io.debezium.jdbc.TemporalPrecisionMode;
import io.debezium.relational.RelationalDatabaseConnectorConfig;
import io.debezium.relational.TableId;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* The configuration properties for the {@link PostgresConnector}
@ -962,6 +961,11 @@ public String snapshotSelectOverrideForTable(String table) {
return getConfig().getString(PostgresConnectorConfig.SNAPSHOT_SELECT_STATEMENT_OVERRIDES_BY_TABLE + "." + table);
}
/**
* DBZ-1234 Obsolete once rows.fetch.size option has been removed;
* value can be passed to super constructor instead
*/
@Deprecated
@Override
protected int defaultSnapshotFetchSize(Configuration config) {
// we use getString() method because it supports null as the return value

View File

@ -13,8 +13,8 @@
import org.apache.kafka.common.config.ConfigDef.Type;
import org.apache.kafka.common.config.ConfigDef.Width;
import io.debezium.heartbeat.Heartbeat;
import io.debezium.config.Field.ValidationOutput;
import io.debezium.heartbeat.Heartbeat;
import io.debezium.relational.history.KafkaDatabaseHistory;
/**
@ -22,7 +22,7 @@
*
* @author Gunnar Morling
*/
public class CommonConnectorConfig {
public abstract class CommonConnectorConfig {
public static final int DEFAULT_MAX_QUEUE_SIZE = 8192;
public static final int DEFAULT_MAX_BATCH_SIZE = 2048;
@ -114,9 +114,7 @@ protected CommonConnectorConfig(Configuration config, String logicalName) {
* @param config configuration
* @return the default fetch size
*/
protected int defaultSnapshotFetchSize(Configuration config) {
throw new UnsupportedOperationException("not implemented");
}
protected abstract int defaultSnapshotFetchSize(Configuration config);
/**
* Provides access to the "raw" config instance. In most cases, access via typed getters for individual properties