Skip to content

[Bug] [imap] After upgrading to 2.3.12, the IMAP entity class has changed, making it impossible to parse the tasks that were running in the previous version. #9928

@huomengbo

Description

@huomengbo

Search before asking

  • I had searched in the issues and found no similar issues.

What happened

Old version: 2.3.10
New version: 2.3.12
Description: We ran a large number of streaming tasks on version 2.3.10. After upgrading to 2.3.12, an error occurred while parsing imap during the startup process.

SeaTunnel Version

2.3.12

SeaTunnel Config

An error occurred during the service startup process

Running Command

/opt/seatunnel/bin/seatunnel-cluster.sh -r master

Error Exception

`[] 2025-10-01 13:45:20,101 WARN  [h.m.i.r.BasicRecordStoreLoader] [hz.main.cached.thread-13] - [172.16.0.2]:5801 [seatunnel] [5.1] Could not load keys from map store
2025-10-01 21:45:20 org.apache.seatunnel.engine.imap.storage.api.exception.IMapStorageException: deserialize data error, class name is {}
2025-10-01 21:45:20     at org.apache.seatunnel.engine.imap.storage.file.common.WALReader.deserializeData(WALReader.java:127) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at org.apache.seatunnel.engine.imap.storage.file.common.WALReader.loadAllData(WALReader.java:108) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at org.apache.seatunnel.engine.imap.storage.file.IMapFileStorage.loadAll(IMapFileStorage.java:238) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at org.apache.seatunnel.engine.server.persistence.FileMapStore.loadAll(FileMapStore.java:87) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.map.impl.MapStoreWrapper.loadAll(MapStoreWrapper.java:175) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.map.impl.mapstore.AbstractMapDataStore.loadAll(AbstractMapDataStore.java:59) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.map.impl.recordstore.BasicRecordStoreLoader.loadAndGet(BasicRecordStoreLoader.java:216) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.map.impl.recordstore.BasicRecordStoreLoader.doBatchLoad(BasicRecordStoreLoader.java:180) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.map.impl.recordstore.BasicRecordStoreLoader.loadValuesInternal(BasicRecordStoreLoader.java:138) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.map.impl.recordstore.BasicRecordStoreLoader.access$100(BasicRecordStoreLoader.java:51) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.map.impl.recordstore.BasicRecordStoreLoader$GivenKeysLoaderTask.call(BasicRecordStoreLoader.java:108) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.internal.util.executor.CompletableFutureTask.run(CompletableFutureTask.java:64) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.internal.util.executor.CachedExecutorServiceDelegate$Worker.run(CachedExecutorServiceDelegate.java:217) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_342]
2025-10-01 21:45:20     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_342]
2025-10-01 21:45:20     at java.lang.Thread.run(Thread.java:750) [?:1.8.0_342]
2025-10-01 21:45:20     at com.hazelcast.internal.util.executor.HazelcastManagedThread.executeRun(HazelcastManagedThread.java:76) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20     at com.hazelcast.internal.util.executor.HazelcastManagedThread.run(HazelcastManagedThread.java:102) ~[seatunnel-starter.jar:2.3.12]
2025-10-01 21:45:20 Caused by: java.lang.ClassNotFoundException: org.apache.seatunnel.engine.core.job.JobStatus
2025-10-01 21:45:20     at java.net.URLClassLoader.findClass(URLClassLoader.java:387) ~[?:1.8.0_342]
2025-10-01 21:45:20     at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_342]
2025-10-01 21:45:20     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352) ~[?:1.8.0_342]
2025-10-01 21:45:20     at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_342]
2025-10-01 21:45:20     at java.lang.Class.forName0(Native Method) ~[?:1.8.0_342]
2025-10-01 21:45:20     at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_342]
2025-10-01 21:45:20     at org.apache.commons.lang3.ClassUtils.getClass(ClassUtils.java:993) ~[hive-exec-3.1.3.jar:3.1.3]
2025-10-01 21:45:20     at org.apache.commons.lang3.ClassUtils.getClass(ClassUtils.java:1059) ~[hive-exec-3.1.3.jar:3.1.3]
2025-10-01 21:45:20     at org.apache.commons.lang3.ClassUtils.getClass(ClassUtils.java:1042) ~[hive-exec-3.1.3.jar:3.1.3]
2025-10-01 21:45:20     at org.apache.seatunnel.engine.imap.storage.file.common.WALReader.deserializeData(WALReader.java:116) ~[seatunnel-starter.jar:2.3.12]
`

Zeta or Flink or Spark Version

No response

Java or Scala Version

No response

Screenshots

No response

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions