From 5d3f5c210aad8d73b007936e65694c401e66c7d0 Mon Sep 17 00:00:00 2001 From: Enrico Tassi Date: Fri, 28 Nov 2014 18:41:43 +0100 Subject: STM: if a-p-always-delegate fetch states from parked worker on edit-at If the async-proofs-always-delegate is passed, workers are killed only when the proof they computed is obsolete. If one jumps back to a state that was computed by the worker (and not the master) instead of (re)computing such state in the master ask the worker to send it back. --- stm/vcs.ml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'stm/vcs.ml') diff --git a/stm/vcs.ml b/stm/vcs.ml index e2513b1c1..3efe89358 100644 --- a/stm/vcs.ml +++ b/stm/vcs.ml @@ -62,11 +62,11 @@ module type S = sig val reachable : ('k,'e,'info) t -> id -> NodeSet.t module Dag : Dag.S with type node = id - val dag : ('kind,'diff,'info) t -> ('diff,'info,id) Dag.t + val dag : ('kind,'diff,'info) t -> ('diff,'info,id*id) Dag.t - val create_cluster : ('k,'e,'i) t -> id list -> id -> ('k,'e,'i) t - val cluster_of : ('k,'e,'i) t -> id -> id Dag.Cluster.t option - val delete_cluster : ('k,'e,'i) t -> id Dag.Cluster.t -> ('k,'e,'i) t + val create_cluster : ('k,'e,'i) t -> id list -> (id * id) -> ('k,'e,'i) t + val cluster_of : ('k,'e,'i) t -> id -> (id * id) Dag.Cluster.t option + val delete_cluster : ('k,'e,'i) t -> (id * id) Dag.Cluster.t -> ('k,'e,'i) t end @@ -102,7 +102,7 @@ type 'kind branch_info = { type ('kind,'edge,'info) t = { cur_branch : Branch.t; heads : 'kind branch_info BranchMap.t; - dag : ('edge,'info,id) Dag.t; + dag : ('edge,'info,id*id) Dag.t; } let empty root = { -- cgit v1.2.3