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

Restorable indexing tasks #1881

Merged
merged 2 commits into from
Nov 24, 2015
Merged

Restorable indexing tasks #1881

merged 2 commits into from
Nov 24, 2015

Commits on Nov 21, 2015

  1. Configuration menu
    Copy the full SHA
    3656909 View commit details
    Browse the repository at this point in the history

Commits on Nov 23, 2015

  1. Some changes that make it possible to restart tasks on the same hardw…

    …are.
    
    This is done by killing and respawning the jvms rather than reconnecting to existing
    jvms, for a couple reasons. One is that it lets you restore tasks after server reboots
    too, and another is that it lets you upgrade all the software on a box at once by just
    restarting everything.
    
    The main changes are,
    
    1) Add "canRestore" and "stopGracefully" methods to Tasks that say if a task can
       stop gracefully, and actually do a graceful stop. RealtimeIndexTask is the only
       one that currently implements this.
    
    2) Add "stop" method to TaskRunners that attempts to do an orderly shutdown.
       ThreadPoolTaskRunner- call stopGracefully on restorable tasks, wait for exit
       ForkingTaskRunner- close output stream to restorable tasks, wait for exit
       RemoteTaskRunner- do nothing special, we actually don't want to shutdown
    
    3) Add "restore" method to TaskRunners that attempts to bootstrap tasks from last run.
       Only ForkingTaskRunner does anything here. It maintains a "restore.json" file with
       a list of restorable tasks.
    
    4) Have the CliPeon's ExecutorLifecycle lock the task base directory to avoid a restored
       task and a zombie old task from stomping on each other.
    gianm committed Nov 23, 2015
    Configuration menu
    Copy the full SHA
    501dcb4 View commit details
    Browse the repository at this point in the history