@Override
      public void run2() throws CacheException {
        AttributesFactory factory = new AttributesFactory();
        // set scope to be same as test region
        Scope scope = rtc.getRegionAttributes().getScope();
        factory.setScope(scope);
        DataPolicy dataPolicy = rtc.getRegionAttributes().getDataPolicy();
        factory.setDataPolicy(dataPolicy);
        RegionAttributes attrs2 = factory.create();
        Region rgn = rtc.createRegion(name, attrs2);

        // Fill the region with some keys.
        for (int i = 0; i < NUM_ENTRIES; i++) {
          byte[] value = new byte[VALUE_SIZE];
          Arrays.fill(value, (byte) 0xAB);
          rgn.put(i, value);
        }
        // just for sanity:
        assertEquals(NUM_ENTRIES + 2, rgn.keySet().size());
      }
Tests fillValues on backup regions.

Note: The regions in the following description all have the same unique name. 1) Create backup
region in VM0 and add some values so they get backed up 2) Close that region 3) Create
non-mirrored distributed region in VM1 and populate with over 1M of data 4) Create a mirrored
KEYS region in VM2. This will cause VM2 to have all the keys but no values. 5) Re-create the
backup region in VM0 with mirroring KEY_VALUES. This will get the keys from VM2 and the values
from VM1 using fillValues. The region should end up with the keys created in step 1, and they
should not be faulted into the VM.
geode-core/src/distributedTest/java/org/apache/geode/cache30/DiskRegionTestImpl.java