static void initializeClone(String srcTableId, String tableId, Connector conn, BatchWriter bw) throws TableNotFoundException, MutationsRejectedException { TabletIterator ti = new TabletIterator(createCloneScanner(srcTableId, conn), new KeyExtent(new Text(srcTableId), null, null).toMetadataRange(), true, true); if (!ti.hasNext()) throw new RuntimeException(" table deleted during clone? srcTableId = " + srcTableId); while (ti.hasNext()) bw.addMutation(createCloneMutation(srcTableId, tableId, ti.next())); bw.flush(); }
Map<Key,Value> tabletKeyValues = tabletIterator.next();
Map<Key,Value> cloneTablet = cloneIter.next(); Text cloneEndRow = new KeyExtent(cloneTablet.keySet().iterator().next().getRow(), (Text) null).getEndRow(); HashSet<String> cloneFiles = new HashSet<String>(); Map<Key,Value> srcTablet = srcIter.next(); srcTablets.add(srcTablet); srcTablet = srcIter.next(); srcTablets.add(srcTablet); srcEndRow = new KeyExtent(srcTablet.keySet().iterator().next().getRow(), (Text) null).getEndRow();
Map<Key,Value> cloneTablet = cloneIter.next(); Text cloneEndRow = new KeyExtent(cloneTablet.keySet().iterator().next().getRow(), (Text) null) .getEndRow(); Map<Key,Value> srcTablet = srcIter.next(); srcTablets.add(srcTablet); srcTablet = srcIter.next(); srcTablets.add(srcTablet); srcEndRow = new KeyExtent(srcTablet.keySet().iterator().next().getRow(), (Text) null)
@VisibleForTesting public static void initializeClone(String tableName, String srcTableId, String tableId, Connector conn, BatchWriter bw) throws TableNotFoundException, MutationsRejectedException { TabletIterator ti; if (srcTableId.equals(MetadataTable.ID)) ti = new TabletIterator(createCloneScanner(tableName, srcTableId, conn), new Range(), true, true); else ti = new TabletIterator(createCloneScanner(tableName, srcTableId, conn), new KeyExtent(srcTableId, null, null).toMetadataRange(), true, true); if (!ti.hasNext()) throw new RuntimeException(" table deleted during clone? srcTableId = " + srcTableId); while (ti.hasNext()) bw.addMutation(createCloneMutation(srcTableId, tableId, ti.next())); bw.flush(); }