anchor.diff:  dirty_index_match_object(Tab, Pat, _Attr) ->
       abort({bad_type, Tab, Pat}).
   
  +-spec dirty_index_read(Tab, Key, Attr) -> [Record] when
  +      Tab::table(),
  +      Key::term(),
  +      Attr::index_attr(),
  +      Record::tuple().
   dirty_index_read(Tab, Key, Attr) when is_atom(Tab), Tab /= schema ->
       Pos = mnesia_schema:attr_tab_to_pos(Tab, Attr),
       case has_var(Key) of
  
positive.code: 	    {error, R}
      end.
  
  start(ExtraEnv) when is_list(ExtraEnv) ->
      case mnesia_lib:ensure_loaded(?APPLICATION) of
  	ok ->
  
negative.code: %% Nodes may either be a list of nodes or one node as an atom
  %% Mnesia on all Nodes must be connected to each other, but
  %% it is not neccessary that they are up and running.
  -spec lock(LockItem, LockKind) -> list() | tuple() | no_return() when
        LockItem :: {'record', table(), Key::term()} |
                    {'table',  table()} |
                    {'global', Key::term(), MnesiaNodes::[node()]},
        LockKind :: lock_kind() | 'load'.
  lock(LockItem, LockKind) ->
      case get(mnesia_activity_state) of
  	{?DEFAULT_ACCESS, Tid, Ts} ->
  