You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ct...@apache.org on 2013/10/30 00:57:38 UTC
git commit: ACCUMULO-1773 Fix javadocs; remove warnings
Updated Branches:
refs/heads/master 21382d30b -> 51fdb90ae
ACCUMULO-1773 Fix javadocs; remove warnings
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/51fdb90a
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/51fdb90a
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/51fdb90a
Branch: refs/heads/master
Commit: 51fdb90ae42da9ccab898f9564c88cd6d079bdc9
Parents: 21382d3
Author: Christopher Tubbs <ct...@apache.org>
Authored: Tue Oct 29 19:52:42 2013 -0400
Committer: Christopher Tubbs <ct...@apache.org>
Committed: Tue Oct 29 19:52:42 2013 -0400
----------------------------------------------------------------------
.../user/TransformingIteratorTest.java | 212 ++++++++++---------
.../server/gc/GarbageCollectionEnvironment.java | 8 +-
2 files changed, 111 insertions(+), 109 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/51fdb90a/core/src/test/java/org/apache/accumulo/core/iterators/user/TransformingIteratorTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/accumulo/core/iterators/user/TransformingIteratorTest.java b/core/src/test/java/org/apache/accumulo/core/iterators/user/TransformingIteratorTest.java
index 7759c1c..4cebab7 100644
--- a/core/src/test/java/org/apache/accumulo/core/iterators/user/TransformingIteratorTest.java
+++ b/core/src/test/java/org/apache/accumulo/core/iterators/user/TransformingIteratorTest.java
@@ -22,7 +22,7 @@ import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import java.io.IOException;
-import java.util.Arrays;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
@@ -66,42 +66,42 @@ public class TransformingIteratorTest {
private static Authorizations authorizations = new Authorizations("vis0", "vis1", "vis2", "vis3", "vis4");
private Connector connector;
private Scanner scanner;
-
+
@Before
public void setUpMockAccumulo() throws Exception {
MockInstance instance = new MockInstance("test");
connector = instance.getConnector("user", new PasswordToken("password"));
connector.securityOperations().changeUserAuthorizations("user", authorizations);
-
+
if (connector.tableOperations().exists(TABLE_NAME))
connector.tableOperations().delete(TABLE_NAME);
connector.tableOperations().create(TABLE_NAME);
BatchWriterConfig bwCfg = new BatchWriterConfig();
bwCfg.setMaxWriteThreads(1);
-
+
BatchWriter bw = connector.createBatchWriter(TABLE_NAME, bwCfg);
bw.addMutation(createDefaultMutation("row1"));
bw.addMutation(createDefaultMutation("row2"));
bw.addMutation(createDefaultMutation("row3"));
-
+
bw.flush();
bw.close();
-
+
scanner = connector.createScanner(TABLE_NAME, authorizations);
scanner.addScanIterator(new IteratorSetting(20, ReuseIterator.class));
}
-
+
private void setUpTransformIterator(Class<? extends TransformingIterator> clazz) {
IteratorSetting cfg = new IteratorSetting(21, clazz);
cfg.setName("keyTransformIter");
TransformingIterator.setAuthorizations(cfg, new Authorizations("vis0", "vis1", "vis2", "vis3"));
scanner.addScanIterator(cfg);
}
-
+
@Test
public void testIdentityScan() throws Exception {
setUpTransformIterator(IdentityKeyTransformingIterator.class);
-
+
// This is just an identity scan, but with the "reuse" iterator that reuses
// the same key/value pair for every getTopKey/getTopValue call. The code
// will always return the final key/value if we didn't copy the original key
@@ -116,20 +116,22 @@ public class TransformingIteratorTest {
}
}
}
-
+
checkExpected(expected);
}
-
+
@Test
public void testNoRangeScan() throws Exception {
- List<Class<? extends ReversingKeyTransformingIterator>> classes = Arrays.asList(ColFamReversingKeyTransformingIterator.class,
- ColQualReversingKeyTransformingIterator.class, ColVisReversingKeyTransformingIterator.class);
-
+ List<Class<? extends ReversingKeyTransformingIterator>> classes = new ArrayList<Class<? extends ReversingKeyTransformingIterator>>();
+ classes.add(ColFamReversingKeyTransformingIterator.class);
+ classes.add(ColQualReversingKeyTransformingIterator.class);
+ classes.add(ColVisReversingKeyTransformingIterator.class);
+
// Test transforming col fam, col qual, col vis
for (Class<? extends ReversingKeyTransformingIterator> clazz : classes) {
scanner.removeScanIterator("keyTransformIter");
setUpTransformIterator(clazz);
-
+
// All rows with visibilities reversed
TransformingIterator iter = clazz.newInstance();
TreeMap<Key,Value> expected = new TreeMap<Key,Value>();
@@ -142,17 +144,17 @@ public class TransformingIteratorTest {
}
}
}
-
+
checkExpected(expected);
}
}
-
+
@Test
public void testVisbilityFiltering() throws Exception {
// Should return nothing since we produced visibilities that can't be seen
setUpTransformIterator(BadVisKeyTransformingIterator.class);
checkExpected(new TreeMap<Key,Value>());
-
+
// Do a "reverse" on the visibility (vis1 -> vis2, vis2 -> vis3, vis3 -> vis0)
// Source data has vis1, vis2, vis3 so vis0 is a new one that is introduced.
// Make sure it shows up in the output with the default test auths which include
@@ -171,7 +173,7 @@ public class TransformingIteratorTest {
}
checkExpected(expected);
}
-
+
@Test
public void testCreatingIllegalVisbility() throws Exception {
// illegal visibility created by transform should be filtered on scan, even if evaluation is done
@@ -179,38 +181,38 @@ public class TransformingIteratorTest {
cfg.setName("keyTransformIter");
scanner.addScanIterator(cfg);
checkExpected(new TreeMap<Key,Value>());
-
+
// ensure illegal vis is supressed when evaluations is done
scanner.removeScanIterator("keyTransformIter");
setUpTransformIterator(IllegalVisKeyTransformingIterator.class);
checkExpected(new TreeMap<Key,Value>());
}
-
+
@Test
public void testRangeStart() throws Exception {
setUpTransformIterator(ColVisReversingKeyTransformingIterator.class);
scanner.setRange(new Range(new Key("row1", "cf2", "cq2", "vis1"), true, new Key("row1", "cf2", "cq3"), false));
-
+
TreeMap<Key,Value> expected = new TreeMap<Key,Value>();
putExpected(expected, 1, 2, 2, 1, PartialKey.ROW_COLFAM_COLQUAL); // before the range start, but transforms in the range
putExpected(expected, 1, 2, 2, 2, PartialKey.ROW_COLFAM_COLQUAL);
-
+
checkExpected(expected);
}
-
+
@Test
public void testRangeEnd() throws Exception {
setUpTransformIterator(ColVisReversingKeyTransformingIterator.class);
scanner.setRange(new Range(new Key("row1", "cf2", "cq2"), true, new Key("row1", "cf2", "cq2", "vis2"), false));
-
+
TreeMap<Key,Value> expected = new TreeMap<Key,Value>();
// putExpected(expected, 1, 2, 2, 1, part); // transforms vis outside range end
putExpected(expected, 1, 2, 2, 2, PartialKey.ROW_COLFAM_COLQUAL);
putExpected(expected, 1, 2, 2, 3, PartialKey.ROW_COLFAM_COLQUAL);
-
+
checkExpected(expected);
}
-
+
@Test
public void testPrefixRange() throws Exception {
setUpTransformIterator(ColFamReversingKeyTransformingIterator.class);
@@ -218,14 +220,14 @@ public class TransformingIteratorTest {
// the data with untransformed col fam cf3 will transform to cf0 and
// be inside the range.
scanner.setRange(new Range(new Key("row1", "cf0"), true, new Key("row1", "cf1"), false));
-
+
TreeMap<Key,Value> expected = new TreeMap<Key,Value>();
for (int cq = 1; cq <= 3; ++cq)
for (int cv = 1; cv <= 3; ++cv)
putExpected(expected, 1, 3, cq, cv, PartialKey.ROW);
checkExpected(expected);
}
-
+
@Test
public void testPostfixRange() throws Exception {
// Set a range that's after all data and make sure we don't
@@ -234,29 +236,29 @@ public class TransformingIteratorTest {
scanner.setRange(new Range(new Key("row4"), null));
checkExpected(new TreeMap<Key,Value>());
}
-
+
@Test
public void testReplaceKeyParts() throws Exception {
TransformingIterator it = new IdentityKeyTransformingIterator();
Key originalKey = new Key("r", "cf", "cq", "cv", 42);
originalKey.setDeleted(true);
-
+
Key newKey = it.replaceColumnFamily(originalKey, new Text("test"));
assertEquals(createDeleteKey("r", "test", "cq", "cv", 42), newKey);
-
+
newKey = it.replaceColumnQualifier(originalKey, new Text("test"));
assertEquals(createDeleteKey("r", "cf", "test", "cv", 42), newKey);
-
+
newKey = it.replaceColumnVisibility(originalKey, new Text("test"));
assertEquals(createDeleteKey("r", "cf", "cq", "test", 42), newKey);
-
+
newKey = it.replaceKeyParts(originalKey, new Text("testCQ"), new Text("testCV"));
assertEquals(createDeleteKey("r", "cf", "testCQ", "testCV", 42), newKey);
-
+
newKey = it.replaceKeyParts(originalKey, new Text("testCF"), new Text("testCQ"), new Text("testCV"));
assertEquals(createDeleteKey("r", "testCF", "testCQ", "testCV", 42), newKey);
}
-
+
@Test
public void testFetchColumnFamilites() throws Exception {
// In this test, we are fetching column family cf2, which is in
@@ -266,7 +268,7 @@ public class TransformingIteratorTest {
int expectedCF = 1;
setUpTransformIterator(ColFamReversingKeyTransformingIterator.class);
scanner.fetchColumnFamily(new Text("cf2"));
-
+
TreeMap<Key,Value> expected = new TreeMap<Key,Value>();
for (int row = 1; row <= 3; ++row)
for (int cq = 1; cq <= 3; ++cq)
@@ -274,49 +276,49 @@ public class TransformingIteratorTest {
putExpected(expected, row, expectedCF, cq, cv, PartialKey.ROW);
checkExpected(expected);
}
-
+
@Test
public void testDeepCopy() throws Exception {
MockInstance instance = new MockInstance("test");
Connector connector = instance.getConnector("user", new PasswordToken("password"));
-
+
connector.tableOperations().create("shard_table");
-
+
BatchWriter bw = connector.createBatchWriter("shard_table", new BatchWriterConfig());
-
+
ColumnVisibility vis1 = new ColumnVisibility("vis1");
ColumnVisibility vis3 = new ColumnVisibility("vis3");
-
+
Mutation m1 = new Mutation("shard001");
m1.put("foo", "doc02", vis1, "");
m1.put("dog", "doc02", vis3, "");
m1.put("cat", "doc02", vis3, "");
-
+
m1.put("bar", "doc03", vis1, "");
m1.put("dog", "doc03", vis3, "");
m1.put("cat", "doc03", vis3, "");
-
+
bw.addMutation(m1);
bw.close();
-
+
BatchScanner bs = connector.createBatchScanner("shard_table", authorizations, 1);
-
+
bs.addScanIterator(new IteratorSetting(21, ColVisReversingKeyTransformingIterator.class));
IteratorSetting iicfg = new IteratorSetting(22, IntersectingIterator.class);
IntersectingIterator.setColumnFamilies(iicfg, new Text[] {new Text("foo"), new Text("dog"), new Text("cat")});
bs.addScanIterator(iicfg);
bs.setRanges(Collections.singleton(new Range()));
-
+
Iterator<Entry<Key,Value>> iter = bs.iterator();
assertTrue(iter.hasNext());
Key docKey = iter.next().getKey();
assertEquals("shard001", docKey.getRowData().toString());
assertEquals("doc02", docKey.getColumnQualifierData().toString());
assertFalse(iter.hasNext());
-
+
bs.close();
}
-
+
@Test
public void testCompactionScanFetchingColumnFamilies() throws Exception {
// In this test, we are fetching column family cf2, which is in
@@ -326,7 +328,7 @@ public class TransformingIteratorTest {
int expectedCF = 1;
setUpTransformIterator(ColFamReversingCompactionKeyTransformingIterator.class);
scanner.fetchColumnFamily(new Text("cf2"));
-
+
TreeMap<Key,Value> expected = new TreeMap<Key,Value>();
for (int row = 1; row <= 3; ++row)
for (int cq = 1; cq <= 3; ++cq)
@@ -334,14 +336,14 @@ public class TransformingIteratorTest {
putExpected(expected, row, expectedCF, cq, cv, PartialKey.ROW);
checkExpected(expected);
}
-
+
@Test
public void testCompactionDoesntFilterVisibilities() throws Exception {
// In scan mode, this should return nothing since it produces visibilites
// the user can't see. In compaction mode, however, the visibilites
// should still show up.
setUpTransformIterator(BadVisCompactionKeyTransformingIterator.class);
-
+
TreeMap<Key,Value> expected = new TreeMap<Key,Value>();
for (int rowID = 1; rowID <= 3; ++rowID) {
for (int cfID = 1; cfID <= 3; ++cfID) {
@@ -358,10 +360,10 @@ public class TransformingIteratorTest {
}
}
}
-
+
checkExpected(expected);
}
-
+
@Test
public void testCompactionAndIllegalVisibility() throws Exception {
setUpTransformIterator(IllegalVisCompactionKeyTransformingIterator.class);
@@ -369,14 +371,14 @@ public class TransformingIteratorTest {
checkExpected(new TreeMap<Key,Value>());
assertTrue(false);
} catch (Exception e) {
-
+
}
}
-
+
@Test
public void testDupes() throws Exception {
setUpTransformIterator(DupeTransformingIterator.class);
-
+
int count = 0;
for (Entry<Key,Value> entry : scanner) {
Key key = entry.getKey();
@@ -386,10 +388,10 @@ public class TransformingIteratorTest {
assertEquals(5l, key.getTimestamp());
count++;
}
-
+
assertEquals(81, count);
}
-
+
@Test
public void testValidateOptions() {
TransformingIterator ti = new ColFamReversingKeyTransformingIterator();
@@ -397,12 +399,12 @@ public class TransformingIteratorTest {
TransformingIterator.setAuthorizations(is, new Authorizations("A", "B"));
TransformingIterator.setMaxBufferSize(is, 10000000);
Assert.assertTrue(ti.validateOptions(is.getOptions()));
-
+
Map<String,String> opts = new HashMap<String,String>();
-
+
opts.put(TransformingIterator.MAX_BUFFER_SIZE_OPT, "10M");
Assert.assertTrue(ti.validateOptions(is.getOptions()));
-
+
opts.clear();
opts.put(TransformingIterator.MAX_BUFFER_SIZE_OPT, "A,B");
try {
@@ -418,27 +420,27 @@ public class TransformingIteratorTest {
} catch (IllegalArgumentException e) {}
}
-
+
private Key createDeleteKey(String row, String colFam, String colQual, String colVis, long timestamp) {
Key key = new Key(row, colFam, colQual, colVis, timestamp);
key.setDeleted(true);
return key;
}
-
+
private void checkExpected(TreeMap<Key,Value> expectedEntries) {
for (Entry<Key,Value> entry : scanner) {
Entry<Key,Value> expected = expectedEntries.pollFirstEntry();
Key actualKey = entry.getKey();
Value actualValue = entry.getValue();
-
+
assertNotNull("Ran out of expected entries on: " + entry, expected);
assertEquals("Key mismatch", expected.getKey(), actualKey);
assertEquals("Value mismatch", expected.getValue(), actualValue);
}
-
+
assertTrue("Scanner did not return all expected entries: " + expectedEntries, expectedEntries.isEmpty());
}
-
+
private static void putExpected(SortedMap<Key,Value> expected, int rowID, int cfID, int cqID, int cvID, PartialKey part) {
String row = "row" + rowID;
String cf = "cf" + cfID;
@@ -446,7 +448,7 @@ public class TransformingIteratorTest {
String cv = "vis" + cvID;
long ts = 100 * cfID + 10 * cqID + cvID;
String val = "val" + ts;
-
+
if (part != null) {
switch (part) {
case ROW:
@@ -462,10 +464,10 @@ public class TransformingIteratorTest {
break;
}
}
-
+
expected.put(new Key(row, cf, cq, cv, ts), new Value(val.getBytes()));
}
-
+
private static Text transform(Text val) {
String s = val.toString();
// Reverse the order of the number at the end, and subtract one
@@ -475,7 +477,7 @@ public class TransformingIteratorTest {
sb.append(i);
return new Text(sb.toString());
}
-
+
private static Mutation createDefaultMutation(String row) {
Mutation m = new Mutation(row);
for (int cfID = 1; cfID <= 3; ++cfID) {
@@ -486,14 +488,14 @@ public class TransformingIteratorTest {
String cv = "vis" + cvID;
long ts = 100 * cfID + 10 * cqID + cvID;
String val = "val" + ts;
-
+
m.put(cf, cq, new ColumnVisibility(cv), ts, val);
}
}
}
return m;
}
-
+
private static Key reverseKeyPart(Key originalKey, PartialKey part) {
Text row = originalKey.getRow();
Text cf = originalKey.getColumnFamily();
@@ -515,13 +517,13 @@ public class TransformingIteratorTest {
}
return new Key(row, cf, cq, cv, ts);
}
-
+
public static class IdentityKeyTransformingIterator extends TransformingIterator {
@Override
protected PartialKey getKeyPrefix() {
return PartialKey.ROW;
}
-
+
@Override
protected void transformRange(SortedKeyValueIterator<Key,Value> input, KVBuffer output) throws IOException {
while (input.hasTop()) {
@@ -530,7 +532,7 @@ public class TransformingIteratorTest {
}
}
}
-
+
public static class DupeTransformingIterator extends TransformingIterator {
@Override
protected void transformRange(SortedKeyValueIterator<Key,Value> input, KVBuffer output) throws IOException {
@@ -542,16 +544,16 @@ public class TransformingIteratorTest {
input.next();
}
}
-
+
@Override
protected PartialKey getKeyPrefix() {
return PartialKey.ROW;
}
-
+
}
-
+
public static abstract class ReversingKeyTransformingIterator extends TransformingIterator {
-
+
@Override
protected void transformRange(SortedKeyValueIterator<Key,Value> input, KVBuffer output) throws IOException {
while (input.hasTop()) {
@@ -561,13 +563,13 @@ public class TransformingIteratorTest {
}
}
}
-
+
public static class ColFamReversingKeyTransformingIterator extends ReversingKeyTransformingIterator {
@Override
protected PartialKey getKeyPrefix() {
return PartialKey.ROW;
}
-
+
@Override
protected Collection<ByteSequence> untransformColumnFamilies(Collection<ByteSequence> columnFamilies) {
HashSet<ByteSequence> untransformed = new HashSet<ByteSequence>();
@@ -575,14 +577,14 @@ public class TransformingIteratorTest {
untransformed.add(untransformColumnFamily(cf));
return untransformed;
}
-
+
protected ByteSequence untransformColumnFamily(ByteSequence colFam) {
Text transformed = transform(new Text(colFam.toArray()));
byte[] bytes = transformed.getBytes();
return new ArrayByteSequence(bytes, 0, transformed.getLength());
}
}
-
+
public static class ColFamReversingCompactionKeyTransformingIterator extends ColFamReversingKeyTransformingIterator {
@Override
public void init(SortedKeyValueIterator<Key,Value> source, Map<String,String> options, IteratorEnvironment env) throws IOException {
@@ -590,27 +592,27 @@ public class TransformingIteratorTest {
super.init(source, options, env);
}
}
-
+
public static class ColQualReversingKeyTransformingIterator extends ReversingKeyTransformingIterator {
@Override
protected PartialKey getKeyPrefix() {
return PartialKey.ROW_COLFAM;
}
}
-
+
public static class ColVisReversingKeyTransformingIterator extends ReversingKeyTransformingIterator {
@Override
protected PartialKey getKeyPrefix() {
return PartialKey.ROW_COLFAM_COLQUAL;
}
}
-
+
public static class IllegalVisKeyTransformingIterator extends TransformingIterator {
@Override
protected PartialKey getKeyPrefix() {
return PartialKey.ROW_COLFAM_COLQUAL;
}
-
+
@Override
protected void transformRange(SortedKeyValueIterator<Key,Value> input, KVBuffer output) throws IOException {
while (input.hasTop()) {
@@ -622,7 +624,7 @@ public class TransformingIteratorTest {
}
}
}
-
+
public static class IllegalVisCompactionKeyTransformingIterator extends IllegalVisKeyTransformingIterator {
@Override
public void init(SortedKeyValueIterator<Key,Value> source, Map<String,String> options, IteratorEnvironment env) throws IOException {
@@ -630,13 +632,13 @@ public class TransformingIteratorTest {
super.init(source, options, env);
}
}
-
+
public static class BadVisKeyTransformingIterator extends TransformingIterator {
@Override
protected PartialKey getKeyPrefix() {
return PartialKey.ROW_COLFAM_COLQUAL;
}
-
+
@Override
protected void transformRange(SortedKeyValueIterator<Key,Value> input, KVBuffer output) throws IOException {
while (input.hasTop()) {
@@ -648,7 +650,7 @@ public class TransformingIteratorTest {
}
}
}
-
+
public static class BadVisCompactionKeyTransformingIterator extends BadVisKeyTransformingIterator {
@Override
public void init(SortedKeyValueIterator<Key,Value> source, Map<String,String> options, IteratorEnvironment env) throws IOException {
@@ -656,33 +658,33 @@ public class TransformingIteratorTest {
super.init(source, options, env);
}
}
-
+
public static class ReuseIterator extends WrappingIterator {
private Key topKey = new Key();
private Value topValue = new Value();
-
+
@Override
public void seek(Range range, Collection<ByteSequence> columnFamilies, boolean inclusive) throws IOException {
super.seek(range, columnFamilies, inclusive);
loadTop();
}
-
+
@Override
public void next() throws IOException {
super.next();
loadTop();
}
-
+
@Override
public Key getTopKey() {
return topKey;
}
-
+
@Override
public Value getTopValue() {
return topValue;
}
-
+
private void loadTop() {
if (hasTop()) {
topKey.set(super.getTopKey());
@@ -690,34 +692,34 @@ public class TransformingIteratorTest {
}
}
}
-
+
private static class MajCIteratorEnvironmentAdapter implements IteratorEnvironment {
private IteratorEnvironment delegate;
-
+
public MajCIteratorEnvironmentAdapter(IteratorEnvironment delegate) {
this.delegate = delegate;
}
-
+
@Override
public SortedKeyValueIterator<Key,Value> reserveMapFileReader(String mapFileName) throws IOException {
return delegate.reserveMapFileReader(mapFileName);
}
-
+
@Override
public AccumuloConfiguration getConfig() {
return delegate.getConfig();
}
-
+
@Override
public IteratorScope getIteratorScope() {
return IteratorScope.majc;
}
-
+
@Override
public boolean isFullMajorCompaction() {
return delegate.isFullMajorCompaction();
}
-
+
@Override
public void registerSideChannel(SortedKeyValueIterator<Key,Value> iter) {
delegate.registerSideChannel(iter);
http://git-wip-us.apache.org/repos/asf/accumulo/blob/51fdb90a/server/src/main/java/org/apache/accumulo/server/gc/GarbageCollectionEnvironment.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/accumulo/server/gc/GarbageCollectionEnvironment.java b/server/src/main/java/org/apache/accumulo/server/gc/GarbageCollectionEnvironment.java
index 1d39254..5052058 100644
--- a/server/src/main/java/org/apache/accumulo/server/gc/GarbageCollectionEnvironment.java
+++ b/server/src/main/java/org/apache/accumulo/server/gc/GarbageCollectionEnvironment.java
@@ -40,7 +40,7 @@ import org.apache.accumulo.core.metadata.schema.MetadataSchema.TabletsSection.Sc
public interface GarbageCollectionEnvironment {
/**
- * Return a list of paths to files and dirs which are candidates for deletion from a given table, {@link RootTable.NAME} or {@link MetadataTable.NAME}
+ * Return a list of paths to files and dirs which are candidates for deletion from a given table, {@link RootTable#NAME} or {@link MetadataTable#NAME}
*
* @param continuePoint
* A row to resume from if a previous invocation was stopped due to finding an extremely large number of candidates to remove which would have
@@ -53,7 +53,7 @@ public interface GarbageCollectionEnvironment {
List<String> getCandidates(String continuePoint) throws TableNotFoundException, AccumuloException, AccumuloSecurityException;
/**
- * Fetch a list of paths for all bulk loads in progress (blip) from a given table, {@link RootTable.NAME} or {@link MetadataTable.NAME}
+ * Fetch a list of paths for all bulk loads in progress (blip) from a given table, {@link RootTable#NAME} or {@link MetadataTable#NAME}
*
* @return The list of files for each bulk load currently in progress.
* @throws TableNotFoundException
@@ -63,9 +63,9 @@ public interface GarbageCollectionEnvironment {
Iterator<String> getBlipIterator() throws TableNotFoundException, AccumuloException, AccumuloSecurityException;
/**
- * Fetches the references to files, {@link DataFileColumnFamily.NAME} or {@link ScanFileColumnFamily.NAME}, from tablets
+ * Fetches the references to files, {@link DataFileColumnFamily#NAME} or {@link ScanFileColumnFamily#NAME}, from tablets
*
- * @return An Iterator to the @{link Entry<Key,Value>}s which constitute a reference to a file.
+ * @return An {@link Iterator} of {@link Entry}<{@link Key}, {@link Value}> which constitute a reference to a file.
* @throws TableNotFoundException
* @throws AccumuloException
* @throws AccumuloSecurityException