BatchWriter bw; try { bs = ReplicationTable.getBatchScanner(client, 4); bw = ReplicationTable.getBatchWriter(client);
BatchWriter replBw; try { bs = ReplicationTable.getBatchScanner(client, 4); replBw = ReplicationTable.getBatchWriter(client); } catch (ReplicationTableOfflineException e) {
BatchWriter replBw; try { bs = ReplicationTable.getBatchScanner(conn, 4); replBw = ReplicationTable.getBatchWriter(conn); } catch (ReplicationTableOfflineException e) {
BatchWriter bw; try { bs = ReplicationTable.getBatchScanner(conn, 4); bw = ReplicationTable.getBatchWriter(conn);
@Test public void notYetReplicationRecordsIgnored() throws Exception { BatchWriter bw = ReplicationTable.getBatchWriter(conn); int numRecords = 3; for (int i = 0; i < numRecords; i++) { String file = "/accumulo/wal/tserver+port/" + UUID.randomUUID(); Mutation m = new Mutation(file); StatusSection.add(m, Integer.toString(i), StatusUtil.openWithUnknownLengthValue()); bw.addMutation(m); } bw.close(); Assert.assertEquals(numRecords, Iterables.size(ReplicationTable.getScanner(conn))); BatchScanner bs = ReplicationTable.getBatchScanner(conn, 1); bs.setRanges(Collections.singleton(new Range())); IteratorSetting cfg = new IteratorSetting(50, WholeRowIterator.class); bs.addScanIterator(cfg); bw = EasyMock.createMock(BatchWriter.class); EasyMock.replay(bw); rcrr.removeCompleteRecords(conn, bs, bw); bs.close(); Assert.assertEquals(numRecords, Iterables.size(ReplicationTable.getScanner(conn))); }
@Test public void partiallyReplicatedRecordsIgnored() throws Exception { BatchWriter bw = ReplicationTable.getBatchWriter(conn); int numRecords = 3; Status.Builder builder = Status.newBuilder(); builder.setClosed(false); builder.setEnd(10000); builder.setInfiniteEnd(false); for (int i = 0; i < numRecords; i++) { String file = "/accumulo/wal/tserver+port/" + UUID.randomUUID(); Mutation m = new Mutation(file); StatusSection.add(m, Integer.toString(i), ProtobufUtil.toValue(builder.setBegin(1000 * (i + 1)).build())); bw.addMutation(m); } bw.close(); Assert.assertEquals(numRecords, Iterables.size(ReplicationTable.getScanner(conn))); BatchScanner bs = ReplicationTable.getBatchScanner(conn, 1); bs.setRanges(Collections.singleton(new Range())); IteratorSetting cfg = new IteratorSetting(50, WholeRowIterator.class); bs.addScanIterator(cfg); bw = EasyMock.createMock(BatchWriter.class); EasyMock.replay(bw); // We don't remove any records, so we can just pass in a fake BW for both rcrr.removeCompleteRecords(conn, bs, bw); bs.close(); Assert.assertEquals(numRecords, Iterables.size(ReplicationTable.getScanner(conn))); }
BatchScanner bs = ReplicationTable.getBatchScanner(conn, 1); bs.setRanges(Collections.singleton(new Range())); StatusSection.limit(bs);
BatchScanner bs = ReplicationTable.getBatchScanner(conn, 1); bs.setRanges(Collections.singleton(new Range())); IteratorSetting cfg = new IteratorSetting(50, WholeRowIterator.class);
BatchScanner bs = ReplicationTable.getBatchScanner(conn, 1); bs.setRanges(Collections.singleton(new Range())); IteratorSetting cfg = new IteratorSetting(50, WholeRowIterator.class);