Skip to content

CorruptIndexException will be thrown if tablet server failover #561

@luoyuxia

Description

@luoyuxia

Search before asking

  • I searched in the issues and found nothing similar.

Fluss version

main (development)

Please describe the bug 🐞

Kill the tabletserver, and restart it.. The following exception will be thrown:

2025-03-07 14:02:04,265 ERROR com.alibaba.fluss.server.ServerBase                          [] - Could not start the TabletServer.
com.alibaba.fluss.exception.CorruptIndexException: Corrupt time index found, time index file (/mnt/fluss/data/5/remote-log-index-cache/2063501_8fbacbc5-6fdb-4b37-9473-1b697d719cee.timeindex) has non-zero size but the last timestamp is 0 which is less than the first timestamp 1741224500729
2025-03-07 14:02:04,271 ERROR com.alibaba.fluss.server.ServerBase                          [] - Could not start TabletServer.
com.alibaba.fluss.exception.FlussException: Failed to start the TabletServer.
        at com.alibaba.fluss.server.ServerBase.start(ServerBase.java:131) ~[fluss-server-0.6-SNAPSHOT.jar:0.6-SNAPSHOT]
        at com.alibaba.fluss.server.ServerBase.startServer(ServerBase.java:88) [fluss-server-0.6-SNAPSHOT.jar:0.6-SNAPSHOT]
        at com.alibaba.fluss.server.tablet.TabletServer.main(TabletServer.java:135) [fluss-server-0.6-SNAPSHOT.jar:0.6-SNAPSHOT]
Caused by: com.alibaba.fluss.exception.CorruptIndexException: Corrupt time index found, time index file (/mnt/fluss/data/5/remote-log-index-cache/

Solution

The timeindex does non-zero size, but the last entry read is 0.. Maybe tabletserver is downloading the timeindex, while fail directly. So the timeindex is not completed which cause the exception..
Maybe we can delete the corrupted timeindex and enable it to be download again insteading throwing exceptio directly.
Found a similar issue in Kafka https://issues.apache.org/jira/browse/KAFKA-2012

Are you willing to submit a PR?

  • I'm willing to submit a PR!

Metadata

Metadata

Assignees

Type

No fields configured for Bug.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions