[
https://issues.apache.org/jira/browse/AURORA-116?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bill Farner reassigned AURORA-116:
----------------------------------
Assignee: Bill Farner
> Improve efficiency of saving host attributes (or avoid saving host attributes)
> ------------------------------------------------------------------------------
>
> Key: AURORA-116
> URL: https://issues.apache.org/jira/browse/AURORA-116
> Project: Aurora
> Issue Type: Task
> Components: Scheduler
> Reporter: Bill Farner
> Assignee: Bill Farner
> Priority: Critical
>
> The scheduler performs multiple write operations for every resource offer, to
> save slave attributes:
> {noformat}
> public void resourceOffers(SchedulerDriver driver, List<Offer> offers) {
> Preconditions.checkState(registered, "Must be registered before receiving
> offers.");
> for (final Offer offer : offers) {
> log(Level.FINE, "Received offer: %s", offer);
> resourceOffers.incrementAndGet();
> storage.write(new MutateWork.NoResult.Quiet() {
> @Override protected void execute(MutableStoreProvider storeProvider) {
>
> storeProvider.getAttributeStore().saveHostAttributes(Conversions.getAttributes(offer));
> }
> });
> {noformat}
> This can unnecessarily block the singly-threaded message dispatch in the
> scheduler driver. An incremental improvement would be to aggregate all slave
> info and save it in one write operation. Better yet would be to perform
> writes asynchronously (taking care to not break task scheduling, since
> attributes are expected to be present). Even better yet, it would be great
> to determine if we can avoid storing host attributes.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)