apache/seatunnel · error · IllegalArgumentException
not support this type of bufferType: ${bufferType}
Error message
not support this type of bufferType: ${bufferType} What it means
EventProcessorFactory.createProcessor selects a LogMiner event processor implementation based on the configured bufferType. If the configured value is not one of the supported types (e.g., 'memory' or the enhanced processor variants), it throws IllegalArgumentException. The bufferType config value is not recognized by this connector version.
Source
Thrown at seatunnel-connectors-v2/connector-cdc/connector-cdc-oracle/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/oracle/source/reader/fetch/logminer/EventProcessorFactory.java:106
offsetContext,
schema,
metrics,
errorHandler,
redoLogSplit);
} else if (bufferType.equals(OracleConnectorConfig.LogMiningBufferType.INFINISPAN_REMOTE)) {
return new CDCRemoteInfinispanLogMinerEventProcessor(
context,
connectorConfig,
jdbcConnection,
dispatcher,
partition,
offsetContext,
schema,
metrics,
errorHandler,
redoLogSplit);
} else {
throw new IllegalArgumentException(
"not support this type of bufferType: " + bufferType);
}
}
/**
* A {@link MemoryLogMinerEventProcessor} with enhanced processRow method to distinguish whether
* is bounded.
*/
public static class CDCMemoryLogMinerEventProcessor extends MemoryLogMinerEventProcessor {
private final IncrementalSplit redoLogSplit;
private final ErrorHandler errorHandler;
private ChangeEventSource.ChangeEventSourceContext context;
private final JdbcSourceEventDispatcher<OraclePartition> dispatcher;
public CDCMemoryLogMinerEventProcessor(
ChangeEventSource.ChangeEventSourceContext context,
OracleConnectorConfig connectorConfig,View on GitHub (pinned to cf67b549a7)
Solutions
- Set bufferType to a supported value (e.g. 'memory') in the Oracle CDC source config
- Check the exact accepted values in the connector's Oracle-CDC options documentation for your SeaTunnel version
- Correct spelling/case of the configured value
- Upgrade the connector if the buffer type you need exists only in a newer release
Example fix
// before bufferType = "heap" // IllegalArgumentException // after bufferType = "memory"
Defensive patterns
Strategy: validation
Validate before calling
Set<String> supported = Set.of("memory"); // per your connector version's docs
if (!supported.contains(bufferType.toLowerCase())) {
throw new IllegalArgumentException("bufferType must be one of " + supported + ", got: " + bufferType);
} Prevention
- Copy bufferType values only from the documentation matching your SeaTunnel version
- Watch for typos and case differences in config values
- Pin the connector version and verify options against its docs
When it happens
Trigger: Setting oracle-cdc config option bufferType (LogMiner buffer type) to a value other than the supported enum (e.g., a typo like 'in-memory' or 'heap', or a type added in a newer version but running an older connector).
Common situations: Typo in config value; copying config from documentation of a newer SeaTunnel version; case sensitivity mistakes; using a custom buffer type that this connector build does not ship.
Understand the failure class
Background: Invalid enum value errors: "Unknown type", "Invalid scope", "must be one of" — when a string is not on the library's allowed list — this error's family across 23 libraries.
Related errors
- Unknown format type:
- COMMON_ILLEGAL_ARGUMENT
- Unsupported auth type: %s, supported: %s
- Unsupported compression type: %s, supported: %s
- Unsupported encryption type: %s, supported: %s
AI-assisted analysis of apache/seatunnel@cf67b549a7 (2026-09-10).
Data as JSON: /api/errors/a241a003b01939b3.
Report an issue: GitHub.