anchor.diff:      gen_server:start_link({local, ?MODULE}, ?MODULE, [ChildCount], []).
   
   init([ChildCount]) ->
  +    Tid = ets:new(?MODULE, [named_table]),
       start_children(ChildCount),
  -    {ok, #state{}}.
  +    {ok, #state{tid=Tid}}.
   
  -handle_call(reload_all_vm, _From, #state{children=Children}=State) ->
  -    lists:foreach(fun(Child) -> riak_js_vm:reload(Child) end, Children),
  +handle_call(reload_all_vm, _From, #state{tid=Tid}=State) ->
  +    ets:safe_fixtable(Tid, true),
  +    reload_children(ets:first(Tid), Tid),
  +    ets:safe_fixtable(Tid, false),
       VNodes = gen_server2:call(riak_vnode_master, all_vnodes),
       lists:foreach(fun(VNode) -> gen_fsm:send_event(VNode, purge_mapcache) end, VNodes),
       {reply, ok, State};
  
positive.code: -export([init/1, handle_call/3, handle_cast/2, handle_info/2,
           terminate/2, code_change/3]).
  
  -record(state, {children=[]}).
  
  dispatch(JSCall) ->
      case select_random() of
  
negative.code: handle_call(_Request, _From, State) ->
      {reply, ignore, State}.
  
  handle_cast({add_child, ChildPid}, #state{tid=Tid}=State) ->
      erlang:monitor(process, ChildPid),
      ets:insert_new(Tid, {ChildPid}),
      {noreply, State};
  handle_cast(_Msg, State) ->
      {noreply, State}.
  
  handle_info({'DOWN', _MRef, _Type, Pid, _Info}, #state{tid=Tid}=State) ->
      case ets:lookup(Tid, Pid) of
          [] ->
              {noreply, State};
          [{Pid}] ->
              ets:delete(?MODULE, Pid),
              riak_js_sup:start_js(self()),
              {noreply, State}
      end;
  handle_info(_Info, State) ->
  