Fix actor bug arising from overwriting task specifications in the local scheduler (#513)

* copy task specifications put into the actor task cache so it won't get overwritten when the scheduler receives the next task

* cleanup

* cleanup and fix

* linting

* fix jenkins test

* fix linting
This commit is contained in:
Philipp Moritz
2017-05-06 17:39:35 -07:00
committed by Robert Nishihara
parent 8532ba4272
commit 1dddd5336a
6 changed files with 25 additions and 9 deletions
+10 -1
View File
@@ -291,6 +291,15 @@ ObjectID task_compute_put_id(TaskID task_id, int64_t put_index);
*/
void TaskSpec_print(TaskSpec *spec, UT_string *output);
/**
* Create a copy of the task spec. Must be freed with TaskSpec_free after use.
*
* @param spec The task specification that will be copied.
* @param task_spec_size The size of the task specification in bytes.
* @returns Pointer to the copy of the task specification.
*/
TaskSpec *TaskSpec_copy(TaskSpec *spec, int64_t task_spec_size);
/**
* Free a task_spec.
*
@@ -355,7 +364,7 @@ Task *Task_alloc(TaskSpec *spec,
DBClientID local_scheduler_id);
/**
* Create a copy of the task. Must be freed with free_task after use.
* Create a copy of the task. Must be freed with Task_free after use.
*
* @param other The task that will be copied.
* @returns Pointer to the copy of the task.