anchor.diff:  -spec register_client__(pid(),client_id(),flag()) -> ok | {error, timeout}.
   register_client__(ClientPid, ClientId, CleanSession) ->
       {Ret, MaybeMonitor} =
  -    case mnesia:dirty_read(vmq_session, ClientId) of
  +    case ets:lookup(vmq_session, ClientId) of
           [] ->
               {new_client, undefined};
           [#session{pid=OldPid, monitor=OldRef, last_seen=LastSeen}]
  
positive.code:         {disc_copies, [node()]},
          {match, #subscriber{_='_'}},
          unsplit_bag_props()]},
       {vmq_session, [
          {record_name, session},
          {index, [#session.monitor]},
          {attributes, record_info(fields, session)},
          {disc_copies, [node()]},
          {match, #session{_='_'}},
          unsplit_vclock_props(#session.vclock)]},
       {vmq_retain, [
          {record_name, retain},
          {attributes, record_info(fields, retain)},
  
negative.code: 
  -spec trie_delete(maybe_improper_list()) -> any().
  trie_delete(Topic) ->
      case mnesia:wread({vmq_trie_node, Topic}) of
          [#trie_node{edge_count=0}] ->
              mnesia:delete({vmq_trie_node, Topic}),
              trie_delete_path(lists:reverse(emqtt_topic:triples(Topic)));
  