You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ec...@apache.org on 2014/01/22 20:03:28 UTC
[1/3] git commit: ACCUMULO-1661 Handle empty column family correctly
for AccumuloInputFormat
Updated Branches:
refs/heads/master 04f485478 -> 5b4ec3343
ACCUMULO-1661 Handle empty column family correctly for AccumuloInputFormat
Signed-off-by: Eric Newton <er...@gmail.com>
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/13eb19c2
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/13eb19c2
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/13eb19c2
Branch: refs/heads/master
Commit: 13eb19c2b92180bc4752d75dd74b76d036eb38e2
Parents: a438488
Author: Vikram Srivastava <vi...@cloudera.com>
Authored: Wed Jan 22 10:36:51 2014 -0800
Committer: Eric Newton <er...@gmail.com>
Committed: Wed Jan 22 13:52:31 2014 -0500
----------------------------------------------------------------------
.../mapreduce/lib/util/InputConfigurator.java | 11 +++++++++--
.../client/mapreduce/AccumuloInputFormatTest.java | 16 ++++++++++++++++
2 files changed, 25 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/13eb19c2/core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java b/core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
index ff14107..b0e649b 100644
--- a/core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
+++ b/core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
@@ -238,8 +238,15 @@ public class InputConfigurator extends ConfiguratorBase {
*/
public static Set<Pair<Text,Text>> getFetchedColumns(Class<?> implementingClass, Configuration conf) {
ArgumentChecker.notNull(conf);
-
- return deserializeFetchedColumns(conf.getStringCollection(enumToConfKey(implementingClass, ScanOpts.COLUMNS)));
+ String confValue = conf.get(enumToConfKey(implementingClass, ScanOpts.COLUMNS));
+ List<String> serialized = new ArrayList<String>();
+ if (confValue != null) {
+ // Split and include any trailing empty strings to allow empty column families
+ for (String val : confValue.split(",", -1)) {
+ serialized.add(val);
+ }
+ }
+ return deserializeFetchedColumns(serialized);
}
public static Set<Pair<Text,Text>> deserializeFetchedColumns(Collection<String> serialized) {
http://git-wip-us.apache.org/repos/asf/accumulo/blob/13eb19c2/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloInputFormatTest.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloInputFormatTest.java b/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloInputFormatTest.java
index d826895..f4408f5 100644
--- a/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloInputFormatTest.java
+++ b/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloInputFormatTest.java
@@ -25,7 +25,9 @@ import java.io.DataOutputStream;
import java.io.IOException;
import java.util.Collection;
import java.util.Collections;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import org.apache.accumulo.core.client.BatchWriter;
import org.apache.accumulo.core.client.BatchWriterConfig;
@@ -443,4 +445,18 @@ public class AccumuloInputFormatTest {
assertNull(e1);
assertNull(e2);
}
+
+ @Test
+ public void testEmptyColumnFamily() throws IOException {
+ Job job = new Job();
+ Set<Pair<Text,Text>> cols = new HashSet<Pair<Text,Text>>();
+ cols.add(new Pair<Text,Text>(new Text(""), null));
+ cols.add(new Pair<Text,Text>(new Text("foo"), new Text("bar")));
+ cols.add(new Pair<Text,Text>(new Text(""), new Text("bar")));
+ cols.add(new Pair<Text,Text>(new Text(""), new Text("")));
+ cols.add(new Pair<Text,Text>(new Text("foo"), new Text("")));
+ AccumuloInputFormat.fetchColumns(job, cols);
+ Set<Pair<Text,Text>> setCols = AccumuloInputFormat.getFetchedColumns(job);
+ assertEquals(cols, setCols);
+ }
}
[3/3] git commit: Merge branch '1.6.0-SNAPSHOT'
Posted by ec...@apache.org.
Merge branch '1.6.0-SNAPSHOT'
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/5b4ec334
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/5b4ec334
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/5b4ec334
Branch: refs/heads/master
Commit: 5b4ec3343c8a13db152e9b7bd2783b89357d4170
Parents: 04f4854 99ebfc7
Author: Eric Newton <er...@gmail.com>
Authored: Wed Jan 22 14:03:16 2014 -0500
Committer: Eric Newton <er...@gmail.com>
Committed: Wed Jan 22 14:03:16 2014 -0500
----------------------------------------------------------------------
.../mapreduce/lib/util/InputConfigurator.java | 11 +++++++++--
.../client/mapreduce/AccumuloInputFormatTest.java | 16 ++++++++++++++++
2 files changed, 25 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
[2/3] git commit: Merge branch '1.5.1-SNAPSHOT' into 1.6.0-SNAPSHOT
Posted by ec...@apache.org.
Merge branch '1.5.1-SNAPSHOT' into 1.6.0-SNAPSHOT
Conflicts:
core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/99ebfc7f
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/99ebfc7f
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/99ebfc7f
Branch: refs/heads/master
Commit: 99ebfc7fcb1912488518d36b44a3c85e804f4a25
Parents: 383bf6d 13eb19c
Author: Eric Newton <er...@gmail.com>
Authored: Wed Jan 22 14:03:05 2014 -0500
Committer: Eric Newton <er...@gmail.com>
Committed: Wed Jan 22 14:03:05 2014 -0500
----------------------------------------------------------------------
.../mapreduce/lib/util/InputConfigurator.java | 11 +++++++++--
.../client/mapreduce/AccumuloInputFormatTest.java | 16 ++++++++++++++++
2 files changed, 25 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/99ebfc7f/core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
----------------------------------------------------------------------
diff --cc core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
index 7b17d11,b0e649b..e31a265
--- a/core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
+++ b/core/src/main/java/org/apache/accumulo/core/client/mapreduce/lib/util/InputConfigurator.java
@@@ -293,9 -237,16 +293,16 @@@ public class InputConfigurator extends
* @see #fetchColumns(Class, Configuration, Collection)
*/
public static Set<Pair<Text,Text>> getFetchedColumns(Class<?> implementingClass, Configuration conf) {
- ArgumentChecker.notNull(conf);
+ notNull(conf);
-
- return deserializeFetchedColumns(conf.getStringCollection(enumToConfKey(implementingClass, ScanOpts.COLUMNS)));
+ String confValue = conf.get(enumToConfKey(implementingClass, ScanOpts.COLUMNS));
+ List<String> serialized = new ArrayList<String>();
+ if (confValue != null) {
+ // Split and include any trailing empty strings to allow empty column families
+ for (String val : confValue.split(",", -1)) {
+ serialized.add(val);
+ }
+ }
+ return deserializeFetchedColumns(serialized);
}
public static Set<Pair<Text,Text>> deserializeFetchedColumns(Collection<String> serialized) {
http://git-wip-us.apache.org/repos/asf/accumulo/blob/99ebfc7f/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloInputFormatTest.java
----------------------------------------------------------------------