You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@aurora.apache.org by "Bill Farner (JIRA)" <ji...@apache.org> on 2015/09/01 20:07:45 UTC

[jira] [Commented] (AURORA-1459) DelayExecutor is flaky within scheduling loop

    [ https://issues.apache.org/jira/browse/AURORA-1459?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14725812#comment-14725812 ] 

Bill Farner commented on AURORA-1459:
-------------------------------------

A good litmus test for the success of this is to remove this line from SchedulerIT, which really should not have been there in the first place:
{code}
    // Registration is published on the event bus, which will be gated until a flush.
    injector.getInstance(Key.get(FlushableWorkQueue.class, AsyncExecutor.class)).flush();
{code}

Ideally the executor used throughout the executor would be transaction-aware and just do the right thing.  It's not clear to me how challenging this will be, though.

https://github.com/apache/aurora/blob/4899e2de3e95d2744b152508c636e6ebc5ec260a/src/test/java/org/apache/aurora/scheduler/app/SchedulerIT.java#L388-L389

> DelayExecutor is flaky within scheduling loop
> ---------------------------------------------
>
>                 Key: AURORA-1459
>                 URL: https://issues.apache.org/jira/browse/AURORA-1459
>             Project: Aurora
>          Issue Type: Bug
>          Components: Scheduler
>            Reporter: Maxim Khutornenko
>
> TaskGroups now uses DelayExecutor introduced to gate async operations. The problem though is that DelayExecutor queue is only flushed on DB transaction completion (1). This means no scheduling can ever proceed unless there is _some_ storage mutation activity. If/when there are no storage writes scheduling effectively halts. 
> While it unlikely to happen in production, it is consistently reproducible with e2e tests in vagrant on any subsequent run.
> (1) - https://github.com/apache/aurora/blob/06ddaadbcba4c66b8019815de6ca27d50a9df77d/src/main/java/org/apache/aurora/scheduler/storage/db/DbStorage.java#L175-L178



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)