anchor.diff:      ok = mnesia:wait_for_tables(Tables, 2500).
   
   
  -%% @doc Initialize a new cluster. Right now this just creates a
  -%% replicated table called 'cluster' that we don't use for anything.
  -initialize_cluster() ->
  -    ensure_table(cluster, []),
  -    gen_event:notify(mb_mnesia_events, {peers, [node()]}).
  -
  -
   %% @doc Return yes or no depending on if mnesia is running, or {error,
   %% Reason} if something is wrong.
   is_mnesia_running() ->
  
positive.code:     ok.
  
  
  %% @doc Traverse the backup, removing all nodes except this one.
  decluster() ->
      Node = node(),
      Convert =
          fun({schema, db_nodes, _}, Acc) ->
                  {[{schema, db_nodes, [Node]}], Acc};
             ({schema, version, Version}, Acc) ->
                  {[{schema, version, Version}], Acc};
             ({schema, cookie, Cookie}, Acc) ->
                  {[{schema, cookie, Cookie}], Acc};
             ({schema, Tab, CreateList}, Acc) ->
                  Keys = [ram_copies, disc_copies, disc_only_copies],
                  OptSwitch =
                      fun({Key, Val}) ->
                              case lists:member(Key, Keys) of
                                  true ->
                                      {Key, case lists:member(Node, Val) of
                                                true -> [Node];
                                                false -> []
                                            end};
                                  false->
                                      {Key, Val}
                              end
                      end,
                  {[{schema, Tab, lists:map(OptSwitch, CreateList)}], Acc};
             (Tuple, Acc) ->
                  {[Tuple], Acc}
          end,
      Source = backup_file(),
      Target = tmpdir("mnesia_declustered"),
      {ok, switched} = mnesia:traverse_backup(Source, mnesia_backup, Target,
                                              mnesia_backup, Convert, switched),
      ok = file:rename(Target, Source),
      ok.
  
  
  %% @private
  %% @doc Exit if Fun hasn't returned within the specified timeout.
  -spec do_with_timeout(fun(), {pid(), any()}, non_neg_integer()) ->
  
negative.code:     after 0 -> ok
      end,
      shutdown_child(Pid).
  