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

Fix projections getting stuck in preparing when a node becomes master #1370

Merged
merged 1 commit into from Jul 26, 2017

Conversation

2 participants
@hayley-jean
Contributor

hayley-jean commented Jul 25, 2017

Re-introduces changes from #1349
This PR was reverted because the tests were failing intermittently. These failures were caused by a possible infinite loop in the tests caused by the StartCore message waiting for the $response-reader-started event to be written. This was resolved by sending both messages in the same test step.

Don't write projection worker started events until projection worker has actually been started.
Also remove log about handling shutdown as this is handled.

This fixes projections getting stuck in preparing when a master node gets re-elected as master.
Reproduction steps:

  1. Start 2 nodes configured to be in a 3 node cluster and to have system projections running.
  2. Write a bunch of events.
  3. Kill the slave node while events are still being written.
  4. Bring the slave node back up after a short while.

The projections should now be stuck in preparing.

@pgermishuys pgermishuys merged commit 487c664 into release-v4.0.2 Jul 26, 2017

2 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
wercker/build-mono4 Wercker pipeline passed
Details

@pgermishuys pgermishuys deleted the projections-in-preparing branch Jul 26, 2017

hayley-jean added a commit that referenced this pull request Jul 31, 2017

Merge pull request #1370 from EventStore/projections-in-preparing
Fix projections getting stuck in preparing when a node becomes master
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment