anchor.diff:          {Node, T} = gb_trees:get(Pid, S#state.workers),
           event_server:event(Node, T#task.jobname,
                   "WARN: [~s:~B] Connection lost to the node (network busy?)",
  -                        [T#task.mode, T#task.taskid], []),
  +                [T#task.mode, T#task.taskid], {task_failed, T#task.mode}),
           gen_server:cast(self(), {exit_worker, Pid, {data_error, "noconnection"}}),
           {noreply, S};
   
  
positive.code:                         {"Task failed to call exit_worker", Node, T}),
                  event_server:event(Node, T#task.jobname,
                          "WARN: [~s:~B] Died unexpectedly without a reason",
                                  [T#task.mode, T#task.taskid], []),
                  gen_server:cast(self(), {exit_worker, Pid,
                          {data_error, "unexpected"}}),
                  {noreply, S}
  
negative.code: handle_info({'EXIT', Pid, {worker_dies, {Msg, Args}}}, S) ->
          {Node, T} = gb_trees:get(Pid, S#state.workers),
          event_server:event(Node, T#task.jobname, "WARN: [~s:~B] ~s",
                  [T#task.mode, T#task.taskid, io_lib:fwrite(Msg, Args)],
                          {task_failed, T#task.mode}),
          gen_server:cast(self(), {exit_worker, Pid, {data_error, "worker_dies"}}),
          {noreply, S};
          
  