@SuppressWarnings({"MismatchedQueryAndUpdateOfCollection"}) private void updateLocal(int p,UUID nodeId,GridDhtPartitionState state,long updateSeq){
  assert nodeId.equals(cctx.nodeId());
  ClusterNode oldest=CU.oldestAliveCacheServerNode(cctx.shared(),topVer);
  assert oldest != null || cctx.kernalContext().clientNode();
  if (cctx.localNode().equals(oldest)) {
    long seq=node2part.updateSequence();
    if (seq != updateSeq) {
      if (seq > updateSeq) {
        if (this.updateSeq.get() < seq) {
          boolean b=this.updateSeq.compareAndSet(this.updateSeq.get(),seq + 1);
          assert b : "Invalid update sequence [updateSeq=" + updateSeq + ", seq="+ seq+ ", curUpdateSeq="+ this.updateSeq.get()+ ", node2part="+ node2part.toFullString()+ ']';
          updateSeq=seq + 1;
        }
 else         updateSeq=seq;
      }
      node2part.updateSequence(updateSeq);
    }
  }
  GridDhtPartitionMap2 map=node2part.get(nodeId);
  if (map == null)   node2part.put(nodeId,map=new GridDhtPartitionMap2(nodeId,updateSeq,topVer,Collections.<Integer,GridDhtPartitionState>emptyMap(),false));
  map.updateSequence(updateSeq,topVer);
  map.put(p,state);
  Set<UUID> ids=part2node.get(p);
  if (ids == null)   part2node.put(p,ids=U.newHashSet(3));
  ids.add(nodeId);
}

@ SuppressWarnings ( { "MismatchedQueryAndUpdateOfCollection" } ) private void updateLocal ( int p , UUID nodeId , GridDhtPartitionState state , long updateSeq ) { assert nodeId . equals ( cctx . nodeId ( ) ) ; ClusterNode oldest = CU . oldestAliveCacheServerNode ( cctx . shared ( ) , topVer ) ; assert oldest != null || cctx . kernalContext ( ) . clientNode ( ) ; if ( cctx . localNode ( ) . equals ( oldest ) ) { long seq = node2part . updateSequence ( ) ; if ( seq != updateSeq ) { if ( seq > updateSeq ) { if ( this . updateSeq . get ( ) < seq ) { boolean b = this . updateSeq . compareAndSet ( this . updateSeq . get ( ) , seq + 1 ) ; assert b : "Invalid update sequence [updateSeq=" + updateSeq + ", seq=" + seq + ", curUpdateSeq=" + this . updateSeq . get ( ) + ", node2part=" + node2part . toFullString ( ) + ']' ; updateSeq = seq + 1 ; } else updateSeq = seq ; } node2part . updateSequence ( updateSeq ) ; } } GridDhtPartitionMap2 map = node2part . get ( nodeId ) ; if ( map == null ) node2part . put ( nodeId , map = new GridDhtPartitionMap2 ( nodeId , updateSeq , topVer , Collections . < Integer , GridDhtPartitionState > emptyMap ( ) , false ) ) ; map . updateSequence ( updateSeq , topVer ) ; map . put ( p , state ) ; Set < UUID > ids = part2node . get ( p ) ; if ( ids == null ) part2node . put ( p , ids = U . newHashSet ( 3 ) ) ; ids . add ( nodeId ) ; }
updates value for single partition .
