sig
type file_fragment = string * int64 * int64
type file = Mapred_tasks.file_fragment list
type map_task = {
map_input : Mapred_tasks.file;
map_output_prefix : string;
map_id : int;
map_best_hosts : Unix.inet_addr list;
}
type sort_task = {
sort_input : Mapred_tasks.file;
sort_input_del : bool;
sort_output : string;
sort_id : int;
}
type shuffle_task = {
shuffle_input : (Mapred_tasks.file * int * int) list;
shuffle_input_del : bool;
shuffle_output : (string * int * int) list;
shuffle_partitions : int * int;
shuffle_coverage : int * int;
shuffle_reduce : bool;
}
type task =
[ `Cleanup
| `Map of Mapred_tasks.map_task
| `Shuffle of Mapred_tasks.shuffle_task
| `Sort of Mapred_tasks.sort_task ]
type task_result =
[ `Corrupt_input of Mapred_tasks.file list
| `Error of string
| `Ok of Mapred_tasks.file list
| `Retry_later ]
module Ord :
sig
type t = Mapred_tasks.task
val compare : Mapred_tasks.task -> Mapred_tasks.task -> int
end
val encode_task : Mapred_tasks.task -> string
val decode_task : string -> Mapred_tasks.task
val encode_task_result : Mapred_tasks.task_result -> string
val decode_task_result : string -> Mapred_tasks.task_result
val string_of_task_id : Mapred_tasks.task -> string
val print_task_id : Mapred_tasks.task -> int -> unit
val print_task : Mapred_tasks.task -> int -> unit
val print_file : ?tag:string -> Mapred_tasks.file -> int -> unit
end