apache/seatunnel · error · InfluxdbConnectorException

UNSUPPORTED_OPERATION

UNSUPPORTED_OPERATION

Error message

Unsupported handleSplitRequest: %d

What it means

InfluxDBSourceSplitEnumerator.handleSplitRequest() is intentionally not supported: this enumerator assigns splits proactively instead of on-demand. Any reader sending a split request causes an UNSUPPORTED_OPERATION error naming the subtask id.

Source

Thrown at seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBSourceSplitEnumerator.java:254

    }

    @Override
    public void open() {
        // nothing to do
    }

    @Override
    public void close() {}

    @Override
    public void notifyCheckpointComplete(long checkpointId) {
        // nothing to do

    }

    @Override
    public void handleSplitRequest(int subtaskId) {
        throw new InfluxdbConnectorException(
                CommonErrorCodeDeprecated.UNSUPPORTED_OPERATION,
                String.format("Unsupported handleSplitRequest: %d", subtaskId));
    }
}

View on GitHub (pinned to cf67b549a7)

Solutions

  1. Do not rely on handleSplitRequest; rely on the enumerator's addSplits/assigned splits mechanism.
  2. If on-demand split assignment is required, modify the enumerator to register subtask requests instead of throwing.

Example fix

// before
public void handleSplitRequest(int subtaskId) {
    throw new InfluxdbConnectorException(...);
}
// after
public void handleSplitRequest(int subtaskId) {
    // register request and reply via the addSplits backpressure flow
    pendingRequests.add(subtaskId);
}
Defensive patterns

Strategy: try-catch

Try / catch

try {
    enumerator.handleSplitRequest(subtaskId);
} catch (InfluxdbConnectorException e) {
    // expected for this enumerator; do not request splits dynamically
    log.debug("Split requests unsupported; splits are assigned eagerly", e);
}

Prevention

When it happens

Trigger: A SourceReader calls handleSplitRequest(subtaskId) while the enumerator uses static/eagerly-assigned splits.

Common situations: Custom reader modifications requesting splits dynamically, or framework behavior that issues split requests against enumerators that do not support on-demand assignment.

Understand the failure class

Background: UnsupportedOperationException and "is not supported" errors: when a library deliberately refuses a call — this error's family across 30 libraries.

Related errors


AI-assisted analysis of apache/seatunnel@cf67b549a7 (2026-09-10). Data as JSON: /api/errors/a572eea6488783b6. Report an issue: GitHub.