Skip to content
This repository has been archived by the owner on Dec 19, 2017. It is now read-only.

Error when starting up the server after an unable to serialize exception #254

Open
SerialVelocity opened this issue Nov 16, 2016 · 0 comments

Comments

@SerialVelocity
Copy link

SerialVelocity commented Nov 16, 2016

Hey,

I created a server that registered an onElection event that tried to store a type that wasn't serializable.

After trying to start it twice, I then removed that type. Then I tried to start the server and got:

Exception in thread "main" java.util.concurrent.CompletionException: java.lang.IllegalArgumentException: offset cannot be less than or equal to the last offset in the index
	at java.util.concurrent.CompletableFuture.reportJoin(CompletableFuture.java:375)
	at java.util.concurrent.CompletableFuture.join(CompletableFuture.java:1934)
	at io.atomix.copycat.server.state.ServerContext.<init>(ServerContext.java:99)
	at io.atomix.copycat.server.CopycatServer$Builder.build(CopycatServer.java:1054)
	at io.atomix.AtomixReplica$Builder.build(AtomixReplica.java:904)
	at com.palantir.atlasdb.timelock.TimeLockServer.run(TimeLockServer.java:56)
	at com.palantir.atlasdb.timelock.TimeLockServer.run(TimeLockServer.java:43)
	at io.dropwizard.cli.EnvironmentCommand.run(EnvironmentCommand.java:40)
	at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:77)
	at io.dropwizard.cli.Cli.run(Cli.java:70)
	at io.dropwizard.Application.run(Application.java:80)
	at com.palantir.atlasdb.timelock.TimeLockServer.main(TimeLockServer.java:45)
Caused by: java.lang.IllegalArgumentException: offset cannot be less than or equal to the last offset in the index
	at io.atomix.catalyst.util.Assert.arg(Assert.java:15)
	at io.atomix.catalyst.util.Assert.arg(Assert.java:22)
	at io.atomix.catalyst.util.Assert.argNot(Assert.java:37)
	at io.atomix.copycat.server.storage.index.SequentialOffsetIndex.index(SequentialOffsetIndex.java:49)
	at io.atomix.copycat.server.storage.index.DelegatingOffsetIndex.index(DelegatingOffsetIndex.java:39)
	at io.atomix.copycat.server.storage.Segment.<init>(Segment.java:91)
	at io.atomix.copycat.server.storage.SegmentManager.loadDiskSegment(SegmentManager.java:364)
	at io.atomix.copycat.server.storage.SegmentManager.loadSegment(SegmentManager.java:351)
	at io.atomix.copycat.server.storage.SegmentManager.loadSegments(SegmentManager.java:424)
	at io.atomix.copycat.server.storage.SegmentManager.open(SegmentManager.java:100)
	at io.atomix.copycat.server.storage.SegmentManager.<init>(SegmentManager.java:63)
	at io.atomix.copycat.server.storage.Log.<init>(Log.java:130)
	at io.atomix.copycat.server.storage.Storage.openLog(Storage.java:318)
	at io.atomix.copycat.server.state.ServerContext.reset(ServerContext.java:474)
	at io.atomix.catalyst.concurrent.ThreadContext.lambda$execute$1(ThreadContext.java:151)
	at io.atomix.catalyst.concurrent.Runnables.lambda$logFailure$2(Runnables.java:20)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

This was with a single node cluster.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant