apache/druid · error · IllegalStateException
Exception while attempting to automatically reset sequences…
Error message
Exception while attempting to automatically reset sequences for partitions[%s]
What it means
Error while executing automatic offset reset in KinesisIndexTaskRunner.possiblyResetDataSourceMetadata: starting sequence numbers for some partitions are no longer available in the stream (expired records), and although isResetOffsetAutomatically was enabled, the reset request (sendResetRequestAndWait) failed — typically an ISE/IOException while coordinating sequence resets with the overlord.
Solutions
- Check overlord connectivity from the task; the reset goes through a reset API call and waits for confirmation.
- Manually reset offsets for the affected partitions via the supervisor reset endpoint.
- Increase Kinesis retention or fix checkpointing so sequences do not expire; consider disabling auto-reset to handle it manually.
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at extensions-core/kinesis-indexing-service/src/main/java/org/apache/druid/indexing/kinesis/KinesisIndexTaskRunner.java:146 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of apache/druid@9b90983fd2 (2026-09-07).
Data as JSON: /api/errors/a68bd08d1cc37e9c.
Report an issue: GitHub.
Appendix: source
Thrown at extensions-core/kinesis-indexing-service/src/main/java/org/apache/druid/indexing/kinesis/KinesisIndexTaskRunner.java:146
if (!partitionToSequenceResetMap.isEmpty()) {
for (Map.Entry<StreamPartition<String>, String> partitionToSequence : partitionToSequenceResetMap.entrySet()) {
log.warn("Starting sequenceNumber[%s] is no longer available for partition[%s].",
partitionToSequence.getValue(),
partitionToSequence.getKey()
);
}
if (task.getTuningConfig().isResetOffsetAutomatically()) {
log.info(
"Attempting to reset offsets for [%d] partitions with ids[%s].",
partitionToSequenceResetMap.size(),
partitionToSequenceResetMap.keySet()
);
try {
sendResetRequestAndWait(partitionToSequenceResetMap, toolbox);
}
catch (IOException e) {
throw new ISE(
e,
"Exception while attempting to automatically reset sequences for partitions[%s]",
partitionToSequenceResetMap.keySet()
);
}
} else {
throw new ISE(
"Automatic offset reset is disabled, but there are partitions with unavailable sequence numbers [%s].",
partitionToSequenceResetMap
);
}
}
}
}
@Override
protected boolean isEndOffsetExclusive()
{View on GitHub (pinned to 9b90983fd2)