Skip to content
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

Mesos backpressure #1630

Merged
merged 2 commits into from Oct 12, 2017
Merged

Mesos backpressure #1630

merged 2 commits into from Oct 12, 2017

Conversation

ssalinas
Copy link
Member

Diff will look nicer once the other mesos_1 PR is merged. Relevant commit is d15af0f

Moves the backpressure to the mesos client itself now that 0.2.0 of mesos-rxjava allows us to set backpressure behaviors. Also doubles the default event buffer size to handle large influxes of status updates from reconciliation

/cc @darcatron @baconmania

String message = String.format("Overflow of event buffer (%s), singularity could not keep up!", scheduler.getEventBufferSize());
scheduler.onUncaughtException(new EventBufferOverflowException(message));
},
BackpressureOverflow.ON_OVERFLOW_ERROR);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So just to confirm, if the set of pending events overflows the max buffer size, we get a top-level exception and abort?

Copy link
Member Author

@ssalinas ssalinas Oct 12, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, it'll cause an abort if the buffer overflows. I felt that was more in line with our idea of keeping state consistent than dropping things. There is an alternative for using an unbounded buffer, but I figured it'd be better to abort with an exception than to oom

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed.

@baconmania
Copy link
Contributor

🚢

@ssalinas ssalinas merged commit 38f4042 into master Oct 12, 2017
@ssalinas ssalinas deleted the mesos_backpressure branch October 12, 2017 16:57
@ssalinas ssalinas added this to the 0.18.0 milestone Nov 3, 2017
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 this pull request may close these issues.

None yet

2 participants