Skip to content

Leader Election 'Cannot Receive Event After...' #2047

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
coltmcnealy-lh opened this issue Sep 7, 2023 · 1 comment · Fixed by #2049
Closed

Leader Election 'Cannot Receive Event After...' #2047

coltmcnealy-lh opened this issue Sep 7, 2023 · 1 comment · Fixed by #2049
Assignees

Comments

@coltmcnealy-lh
Copy link
Contributor

Bug Report

Receiving (potentially harmless...?) stacktrace in the follower pod with a 2-replica leader election setup.

What did you see instead? Under which circumstances?

We saw the following stack trace from the follower pod (the one that wasn't the leader). The stack trace repeated every few seconds for 2-3 minutes and then stopped. The leader pod reconciled our custom resources correctly.

19:21:57 ERROR SharedProcessor - v1/namespaces/littlehorse/pods failed invoking InformerEventSource{resourceClass: Pod} event handler: Cannot receive event after a delete event received
java.lang.IllegalStateException: Cannot receive event after a delete event received
	at io.javaoperatorsdk.operator.processing.event.ResourceState.markEventReceived(ResourceState.java:83) ~[operator.jar:?]
	at io.javaoperatorsdk.operator.processing.event.EventProcessor.markEventReceived(EventProcessor.java:191) ~[operator.jar:?]
	at io.javaoperatorsdk.operator.processing.event.EventProcessor.handleEventMarking(EventProcessor.java:180) ~[operator.jar:?]
	at io.javaoperatorsdk.operator.processing.event.EventProcessor.handleEvent(EventProcessor.java:98) ~[operator.jar:?]
	at io.javaoperatorsdk.operator.processing.event.source.informer.InformerEventSource.lambda$propagateEvent$3(InformerEventSource.java:210) ~[operator.jar:?]
	at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?]
	at io.javaoperatorsdk.operator.processing.event.source.informer.InformerEventSource.propagateEvent(InformerEventSource.java:200) ~[operator.jar:?]
	at io.javaoperatorsdk.operator.processing.event.source.informer.InformerEventSource.onAddOrUpdate(InformerEventSource.java:175) ~[operator.jar:?]
	at io.javaoperatorsdk.operator.processing.event.source.informer.InformerEventSource.onUpdate(InformerEventSource.java:136) ~[operator.jar:?]
	at io.javaoperatorsdk.operator.processing.event.source.informer.InformerEventSource.onUpdate(InformerEventSource.java:73) ~[operator.jar:?]
	at io.fabric8.kubernetes.client.informers.impl.cache.ProcessorListener$UpdateNotification.handle(ProcessorListener.java:92) ~[operator.jar:?]
	at io.fabric8.kubernetes.client.informers.impl.cache.ProcessorListener.add(ProcessorListener.java:50) ~[operator.jar:?]
	at io.fabric8.kubernetes.client.informers.impl.cache.SharedProcessor.lambda$distribute$0(SharedProcessor.java:91) ~[operator.jar:?]
	at io.fabric8.kubernetes.client.informers.impl.cache.SharedProcessor.lambda$distribute$1(SharedProcessor.java:114) ~[operator.jar:?]
	at io.fabric8.kubernetes.client.utils.internal.SerialExecutor.lambda$execute$0(SerialExecutor.java:58) ~[operator.jar:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
	at java.lang.Thread.run(Thread.java:833) [?:?]

@csviri csviri self-assigned this Sep 8, 2023
@csviri csviri linked a pull request Sep 8, 2023 that will close this issue
@csviri
Copy link
Collaborator

csviri commented Sep 8, 2023

This is relevant, thank you @coltmcnealy-lh !

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

Successfully merging a pull request may close this issue.

2 participants