/** * Record all the versions represented in the bit set in the * RegionVersionHolder. This method is overridden in subclasses * to change the recording order. */ protected void recordVersions(RegionVersionHolder vh, BitSet bs) { // System.out.println("vh="+vh); for(int i =1; i < bs.length(); i++) { if(bs.get(i)) { vh.recordVersion(i, null); // System.out.println("after adding " + i + ", vh="+vh); } } }
@Override public void run() { //This thread will record updates for this single thread. The //update is the thread id * the update number for(int i =myNumber; i < updates; i+= numUpdaters) { //Only apply the update if it is not an intended exception if(!exceptions.contains(i)) { synchronized(vh1) { vh1.recordVersion(i, null); } //Apply only half the updates to vh2. We will then mimic a GII if(i < updates /2) { synchronized(vh2) { vh2.recordVersion(i, null); } } Thread.yield(); } } }
/** * Record versions in random order, rather than in sequential order * This should generate and fill some exceptions. */ @Override protected void recordVersions(RegionVersionHolder vh, BitSet bs) { List<Integer> list = new ArrayList<Integer>(); //Build a list of the versions to record for(int i =1; i < bs.length(); i++) { if(bs.get(i)) { list.add(i); } } //randomize the list Collections.shuffle(list, random); for(Integer version : list) { vh.recordVersion(version, null); } }
public void testInitialized() { RegionVersionHolder vh1 = new RegionVersionHolder(member); vh1.recordVersion(56, null); vh1.recordVersion(57, null); vh1.recordVersion(58, null); vh1.recordVersion(59, null); vh1.recordVersion(60, null); vh1 = vh1.clone(); System.out.println("This node init, vh1="+vh1); RegionVersionHolder vh2 = new RegionVersionHolder(member); for(int i=1;i<57;i++) { vh2.recordVersion(i,null); } vh2 = vh2.clone(); System.out.println("GII node init, vh2="+vh2); vh1.initializeFrom(vh2); vh1 = vh1.clone(); System.out.println("After initialize, vh1="+vh1); //vh1.recordVersion(57,null); vh1.recordVersion(58,null); vh1.recordVersion(59,null); vh1.recordVersion(60,null); System.out.println("After initialize and record version, vh1="+vh1); vh1 = vh1.clone(); vh1.recordVersion(57,null); System.out.println("After initialize and record version after clone, vh1="+vh1); assertTrue(vh1.contains(58)); }
vh.recordVersion(1,null); vh.recordVersion(2,null); vh.recordVersion(14,null); vh.recordVersion(62,null); vh.recordVersion(95,null); vh.recordVersion(96,null); vh.recordVersion(97,null); vh.recordVersion(98,null); vh.recordVersion(99,null); vh.recordVersion(100,null); vh.recordVersion(123,null); vh.recordVersion(144,null); vh.recordVersion(146,null); vh.recordVersion(147,null); vh.recordVersion(148,null); vh.recordVersion(149,null); vh.recordVersion(150,null); vh.recordVersion(151,null); vh.recordVersion(152,null); vh.recordVersion(153,null); vh.recordVersion(154,null); vh.recordVersion(155,null); vh.recordVersion(156,null); vh.recordVersion(157,null); vh.recordVersion(158,null); vh.recordVersion(159,null); vh.recordVersion(160,null); vh.recordVersion(161,null); vh.recordVersion(184,null);
public void testInitialize3() { RegionVersionHolder vh1 = new RegionVersionHolder(member); for(int i=0;i<=1074; i++) { vh1.recordVersion(i, null); } RegionVersionHolder vh2 = new RegionVersionHolder(member); vh2.recordVersion(1075,null); vh1.makeReadyForRecording(); vh2.initializeFrom(vh1.clone()); vh2.makeReadyForRecording(); vh2.recordVersion(1075,null); System.out.println("vh1" + vh2.clone()); // vh2.recordVersion(1098, null); // // System.out.println("vh1" + vh2.clone()); // System.out.println(vh2.contains(1097)); }
public void test1() { RegionVersionHolder vh1 = new RegionVersionHolder(member); vh1.recordVersion(15, null); RegionVersionHolder vh2 = vh1.clone(); vh3.recordVersion(i, null); vh2.recordVersion(12, null); vh4.recordVersion(12, null); vh2.recordVersion(14, null); vh4.recordVersion(14, null); vh2.recordVersion(18, null); vh4.recordVersion(18, null);
public void test48066_1() { RegionVersionHolder vh1 = new RegionVersionHolder(member); for (int i=1; i<=3; i++) { vh1.recordVersion(i, null); vh3.recordVersion(i, null); assertEquals(3, vh3.getVersion()); vh3.recordVersion(8, null); System.out.println(vh3.contains(8)); vh3.recordVersion(4, null); System.out.println("after record 4, vh3="+vh3); assertEquals(8, vh3.getVersion()); vh3.recordVersion(7, null); System.out.println("after record 7, vh3="+vh3); assertEquals(8, vh3.getVersion());
public void testInitialize2() { RegionVersionHolder vh1 = new RegionVersionHolder(member); vh1.recordVersion(1093, null); vh1.recordVersion(2000, null); System.out.println("vh1" + vh1); vh3.recordVersion(i, null); System.out.println("after init, vh2=" + vh2.clone() + vh2.contains(2000)); vh2.recordVersion(1098, null); vh2.recordVersion(1096, null); vh2.recordVersion(1097, null); System.out.println(vh2.contains(1097)); vh2.recordVersion(1095, null);
logger.trace(LogMarker.RVV, "Recording rv{} for {}", version, mbr); holder.recordVersion(version);
holder.recordVersion(version, logger);
public void testInitialize() { RegionVersionHolder vh1 = new RegionVersionHolder(member); vh1.recordVersion(11, null); RegionVersionHolder vh2 = vh1.clone(); vh3.recordVersion(i, null); assertTrue(vh2.contains(9)); vh2.recordVersion(11, null); assertTrue(vh2.contains(11));// FAILS
RegionVersionHolder vh2 = new RegionVersionHolder(member); vh1.recordVersion(100, null); BitSet bs1 = new BitSet(); bs1.set(1, 100); vh1.recordVersion(2*originalBitSetWidth, null);
holder.recordVersion(version, logger); memberToVersionSnapshot.put(holder.id, holder); forPrinting = memberToVersionSnapshot;