[fluo] branch master updated: fixes #893 added ability to secure zookeeper (#899)

2017-08-14 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/fluo.git


The following commit(s) were added to refs/heads/master by this push:
 new 5b30cd3  fixes #893 added ability to secure zookeeper (#899)
5b30cd3 is described below

commit 5b30cd39adab45848ed9964f4c521d493715578a
Author: Keith Turner <ke...@deenlo.com>
AuthorDate: Mon Aug 14 15:30:06 2017 +

fixes #893 added ability to secure zookeeper (#899)
---
 .../org/apache/fluo/api/client/FluoFactory.java|   7 -
 .../apache/fluo/api/config/FluoConfiguration.java  |  37 -
 .../org/apache/fluo/core/client/FluoAdminImpl.java |   1 -
 .../org/apache/fluo/core/util/CuratorUtil.java |  55 ++-
 .../src/main/config/fluo-conn.properties   |   6 +
 .../apache/fluo/integration/impl/ZKSecretIT.java   | 175 +
 6 files changed, 263 insertions(+), 18 deletions(-)

diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/client/FluoFactory.java 
b/modules/api/src/main/java/org/apache/fluo/api/client/FluoFactory.java
index 52b3843..98d260a 100644
--- a/modules/api/src/main/java/org/apache/fluo/api/client/FluoFactory.java
+++ b/modules/api/src/main/java/org/apache/fluo/api/client/FluoFactory.java
@@ -25,8 +25,6 @@ import org.apache.fluo.api.exceptions.FluoException;
 import org.apache.fluo.api.mini.MiniFluo;
 import org.apache.fluo.api.service.FluoOracle;
 import org.apache.fluo.api.service.FluoWorker;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import static org.apache.fluo.api.config.FluoConfiguration.FLUO_PREFIX;
 
@@ -38,8 +36,6 @@ import static 
org.apache.fluo.api.config.FluoConfiguration.FLUO_PREFIX;
  */
 public class FluoFactory {
 
-  private static final Logger log = LoggerFactory.getLogger(FluoFactory.class);
-
   private static final String FLUO_IMPL_PREFIX = FLUO_PREFIX + ".impl";
   private static final String CLIENT_CLASS_PROP = FLUO_IMPL_PREFIX + 
".client.class";
   private static final String CLIENT_CLASS_DEFAULT = 
"org.apache.fluo.core.client.FluoClientImpl";
@@ -123,14 +119,11 @@ public class FluoFactory {
   String msg =
   "Could not find " + clazz
   + " class which could be caused by fluo-core jar not being on 
the classpath.";
-  log.error(msg);
   throw new FluoException(msg, e);
 } catch (InvocationTargetException e) {
   String msg = "Failed to construct " + clazz + " class due to exception";
-  log.error(msg, e);
   throw new FluoException(msg, e);
 } catch (Exception e) {
-  log.error("Could not instantiate class - " + clazz);
   throw new FluoException(e);
 }
   }
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java 
b/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java
index 54e07d2..6c66b6f 100644
--- 
a/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java
+++ 
b/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java
@@ -113,10 +113,17 @@ public class FluoConfiguration extends 
SimpleConfiguration {
*/
   public static final String CONNECTION_ZOOKEEPER_TIMEOUT_PROP = 
CONNECTION_PREFIX
   + ".zookeeper.timeout";
+
+  /**
+   * @since 1.2.0
+   */
+  public static final String CONNECTION_ZOOKEEPER_SECRET = CONNECTION_PREFIX + 
".zookeeper.secret";
+
   /**
* @since 1.2.0
*/
   public static final String CONNECTION_ZOOKEEPERS_PROP = CONNECTION_PREFIX + 
".zookeepers";
+
   /**
* @since 1.2.0
*/
@@ -345,6 +352,33 @@ public class FluoConfiguration extends SimpleConfiguration 
{
 CONNECTION_ZOOKEEPER_TIMEOUT_DEFAULT);
   }
 
+  /**
+   * Get the secret configured to access data in zookeeper. If the secret is 
an empty string, then
+   * nothing in zookeeper is locked down.
+   *
+   * 
+   * Gets the value of the property {@value #CONNECTION_ZOOKEEPER_SECRET}
+   *
+   * @since 1.2.0
+   */
+  public String getZookeeperSecret() {
+return getString(CONNECTION_ZOOKEEPER_SECRET, "");
+  }
+
+  /**
+   * Setting this before initializing an application will cause Fluo to lock 
down Zookeeper such
+   * that this secret is required to read data from zookeeper. If set to an 
empty string, then
+   * nothing in zookeeper will be locked down. This property defaults to an 
empty string.
+   *
+   * 
+   * Sets the value of the property {@value #CONNECTION_ZOOKEEPER_SECRET}
+   *
+   * @since 1.2.0
+   */
+  public void setZookeeperSecret(String secret) {
+setProperty(CONNECTION_ZOOKEEPER_SECRET, 
verifyNotNull(CONNECTION_ZOOKEEPER_SECRET, secret));
+  }
+
   @Deprecated
   public FluoConfiguration setClientRetryTimeout(int timeoutMs) {
 return setConnectionRetryTimeout(timeoutMs);
@@ -968,7 +1002,6 @@ public clas

[fluo] branch master updated: fixes #894 merge SimpleConfiguration Objects (#902)

2017-08-14 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/fluo.git


The following commit(s) were added to refs/heads/master by this push:
 new a349a9d  fixes #894 merge SimpleConfiguration Objects (#902)
a349a9d is described below

commit a349a9d00b5081545d4b052bb90f13d7b497905c
Author: Christopher McTague <cjmcta...@apache.org>
AuthorDate: Mon Aug 14 10:59:26 2017 -0400

fixes #894 merge SimpleConfiguration Objects (#902)
---
 .../fluo/api/config/SimpleConfiguration.java   | 40 +-
 .../fluo/api/config/SimpleConfigurationTest.java   | 90 ++
 2 files changed, 129 insertions(+), 1 deletion(-)

diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/config/SimpleConfiguration.java 
b/modules/api/src/main/java/org/apache/fluo/api/config/SimpleConfiguration.java
index f54e3f5..afe8c6f 100644
--- 
a/modules/api/src/main/java/org/apache/fluo/api/config/SimpleConfiguration.java
+++ 
b/modules/api/src/main/java/org/apache/fluo/api/config/SimpleConfiguration.java
@@ -27,6 +27,7 @@ import java.io.Serializable;
 import java.util.Iterator;
 import java.util.Map;
 import java.util.Map.Entry;
+import java.util.Objects;
 
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableMap.Builder;
@@ -213,7 +214,6 @@ public class SimpleConfiguration implements Serializable {
 }
   }
 
-
   public void save(OutputStream out) {
 PropertiesConfiguration pconf = new PropertiesConfiguration();
 pconf.setDelimiterParsingDisabled(true);
@@ -250,6 +250,44 @@ public class SimpleConfiguration implements Serializable {
 return new SimpleConfiguration(internalConfig.subset(prefix));
   }
 
+  /**
+   * @param fallback SimpleConfiguration to join together
+   * @return a new simple configuration that contains all of the current 
properties from this plus
+   * the properties from fallback that are not present in this.
+   * 
+   * @since 1.2.0
+   */
+  public SimpleConfiguration orElse(SimpleConfiguration fallback) {
+SimpleConfiguration copy = new SimpleConfiguration(this);
+for (Map.Entry<String, String> entry : fallback.toMap().entrySet()) {
+  if (!copy.containsKey(entry.getKey())) {
+copy.setProperty(entry.getKey(), entry.getValue());
+  }
+}
+return copy;
+  }
+
+  @Override
+  public int hashCode() {
+return Objects.hashCode(this.toMap().entrySet());
+  }
+
+  @Override
+  public boolean equals(Object o) {
+if (o == this) {
+  return true;
+}
+
+if (o instanceof SimpleConfiguration) {
+  Map<String, String> th = this.toMap();
+  Map<String, String> sc = ((SimpleConfiguration) o).toMap();
+  if (th.size() == sc.size()) {
+return th.entrySet().equals(sc.entrySet());
+  }
+}
+return false;
+  }
+
   @Override
   public String toString() {
 return ConfigurationUtils.toString(internalConfig);
diff --git 
a/modules/api/src/test/java/org/apache/fluo/api/config/SimpleConfigurationTest.java
 
b/modules/api/src/test/java/org/apache/fluo/api/config/SimpleConfigurationTest.java
new file mode 100644
index 000..e905a5f
--- /dev/null
+++ 
b/modules/api/src/test/java/org/apache/fluo/api/config/SimpleConfigurationTest.java
@@ -0,0 +1,90 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.fluo.api.config;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ * @since 1.2.0
+ */
+public class SimpleConfigurationTest {
+
+  @Test
+  public void testMerge() {
+SimpleConfiguration empty = new SimpleConfiguration();
+SimpleConfiguration sc1 = new SimpleConfiguration();
+SimpleConfiguration sc2 = new SimpleConfiguration();
+SimpleConfiguration sc3 = new SimpleConfiguration();
+SimpleConfiguration testEmpty = sc1.orElse(sc2).orElse(sc3);
+
+Assert.assertEquals(empty, testEmpty);
+
+sc1.setProperty("set1", "value1");
+sc1.setProperty("set1", "value2");
+sc1.setProperty("set3", "value3");
+sc2.setProperty("set4", "value4");
+   

[incubator-fluo] branch master updated: fixes #867 - Stream support for Scanners (#884)

2017-07-25 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-fluo.git


The following commit(s) were added to refs/heads/master by this push:
 new 2f11089  fixes #867 - Stream support for Scanners (#884)
2f11089 is described below

commit 2f11089270f02c65404a7d0c9f7242254d992937
Author: Christopher McTague <cjmcta...@apache.org>
AuthorDate: Tue Jul 25 08:48:51 2017 -0400

fixes #867 - Stream support for Scanners (#884)
---
 .../fluo/api/client/scanner/CellScanner.java   |  10 +
 .../fluo/api/client/scanner/ColumnScanner.java |  12 ++
 .../apache/fluo/api/client/scanner/RowScanner.java |  10 +
 .../fluo/api/client/scanner/ScannerStreamTest.java | 238 +
 4 files changed, 270 insertions(+)

diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/client/scanner/CellScanner.java 
b/modules/api/src/main/java/org/apache/fluo/api/client/scanner/CellScanner.java
index b2bf50e..90e631e 100644
--- 
a/modules/api/src/main/java/org/apache/fluo/api/client/scanner/CellScanner.java
+++ 
b/modules/api/src/main/java/org/apache/fluo/api/client/scanner/CellScanner.java
@@ -15,6 +15,9 @@
 
 package org.apache.fluo.api.client.scanner;
 
+import java.util.stream.Stream;
+import java.util.stream.StreamSupport;
+
 import org.apache.fluo.api.data.RowColumnValue;
 
 /**
@@ -22,4 +25,11 @@ import org.apache.fluo.api.data.RowColumnValue;
  */
 public interface CellScanner extends Iterable {
 
+  /**
+   * @since 1.2.0
+   */
+  default Stream stream() {
+return StreamSupport.stream(spliterator(), false);
+  }
+
 }
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/client/scanner/ColumnScanner.java
 
b/modules/api/src/main/java/org/apache/fluo/api/client/scanner/ColumnScanner.java
index dd28ce9..6a61a88 100644
--- 
a/modules/api/src/main/java/org/apache/fluo/api/client/scanner/ColumnScanner.java
+++ 
b/modules/api/src/main/java/org/apache/fluo/api/client/scanner/ColumnScanner.java
@@ -15,6 +15,9 @@
 
 package org.apache.fluo.api.client.scanner;
 
+import java.util.stream.Stream;
+import java.util.stream.StreamSupport;
+
 import org.apache.fluo.api.data.Bytes;
 import org.apache.fluo.api.data.ColumnValue;
 
@@ -24,12 +27,21 @@ import org.apache.fluo.api.data.ColumnValue;
 public interface ColumnScanner extends Iterable {
 
   /**
+   * @since 1.0.0
* @return the row for all column values
*/
   Bytes getRow();
 
   /**
+   * @since 1.0.0
* @return the row for all column values decoded as UTF-8
*/
   String getsRow();
+
+  /**
+   * @since 1.2.0
+   */
+  default Stream stream() {
+return StreamSupport.stream(spliterator(), false);
+  }
 }
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/client/scanner/RowScanner.java 
b/modules/api/src/main/java/org/apache/fluo/api/client/scanner/RowScanner.java
index e65816b..3d679f8 100644
--- 
a/modules/api/src/main/java/org/apache/fluo/api/client/scanner/RowScanner.java
+++ 
b/modules/api/src/main/java/org/apache/fluo/api/client/scanner/RowScanner.java
@@ -15,9 +15,19 @@
 
 package org.apache.fluo.api.client.scanner;
 
+import java.util.stream.Stream;
+import java.util.stream.StreamSupport;
+
 /**
  * @since 1.0.0
  */
 public interface RowScanner extends Iterable {
 
+  /**
+   * @since 1.2.0
+   */
+  default Stream stream() {
+return StreamSupport.stream(spliterator(), false);
+  }
+
 }
diff --git 
a/modules/api/src/test/java/org/apache/fluo/api/client/scanner/ScannerStreamTest.java
 
b/modules/api/src/test/java/org/apache/fluo/api/client/scanner/ScannerStreamTest.java
new file mode 100644
index 000..d885552
--- /dev/null
+++ 
b/modules/api/src/test/java/org/apache/fluo/api/client/scanner/ScannerStreamTest.java
@@ -0,0 +1,238 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.fluo.api.client.scanner;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Objects;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import org.apache.fluo.api.data.Bytes;
+import org.apache.flu

[incubator-fluo-website] branch asf-site updated: Jekyll build from gh-pages:6cad111

2017-07-17 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/incubator-fluo-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
 new e303f07  Jekyll build from gh-pages:6cad111
e303f07 is described below

commit e303f07d0f8c963091f909103cf4888af65e363d
Author: Keith Turner <ktur...@apache.org>
AuthorDate: Mon Jul 17 16:57:44 2017 -0400

Jekyll build from gh-pages:6cad111

re apache/fluo#881 improved documentation about issues (#71)

* re apache/fluo#881 improved documentation about issues

* added an s
---
 feed.xml   |  4 ++--
 getinvolved/index.html | 33 +++--
 2 files changed, 21 insertions(+), 16 deletions(-)

diff --git a/feed.xml b/feed.xml
index f4b5946..3799b97 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Thu, 29 Jun 2017 17:59:05 +
-Thu, 29 Jun 2017 17:59:05 +
+Mon, 17 Jul 2017 20:57:40 +
+Mon, 17 Jul 2017 20:57:40 +
 Jekyll v3.3.1
 
   
diff --git a/getinvolved/index.html b/getinvolved/index.html
index 069b539..f45b65c 100644
--- a/getinvolved/index.html
+++ b/getinvolved/index.html
@@ -112,12 +112,24 @@
   
 Below are some ways that you can get involved with Apache Fluo:
 
+Issues
+
+Fluo uses GitHub issues to track bugs and new features.  Fluo has multiple 
git repositories, each
+with its own issues.  Use the following links to report bugs, request new 
features, or search
+current issues.
+
+
+  https://github.com/apache/fluo/issues;>Fluo issues
+  https://github.com/apache/fluo-recipes/issues;>Fluo Recipes 
issues
+  https://github.com/apache/incubator-fluo-website/issues;>Website 
issues
+
+
 Mailing lists
 
-The dev mailing list is for general 
discussion, announcing releases, organizing meet ups, etc.  For
-discussion regarding specific issues or pull request consider using Github (https://github.com/apache/fluo;>Fluo, https://github.com/apache/fluo-recipes;>Fluo
-Recipes, https://github.com/apache/incubator-fluo-website;>Fluo 
website).  The notifications and 
commits mailing lists receive email from 
automated
-services and can be used to observe project activity.
+The dev mailing list is for user 
questions, general discussion, announcing releases, organizing
+meet ups, etc. The notifications and 
commits mailing lists receive email from 
automated services
+and can be used to observe project activity.  A lot of discussion happens on 
GitHub and is archived
+to the notifications list.
 
 
   
@@ -146,18 +158,11 @@ services and can be used to observe project activity.
 
 Drop by and chat about Apache Fluo at #fluo on https://freenode.net/;>freenode.
 
-User feedback
-
-Users can provide feedback by:
-
-
-  Creating an issue on our GitHub pages: https://github.com/apache/fluo/issues;>Fluo, https://github.com/apache/fluo-recipes/issues;>Fluo Recipes, https://github.com/apache/incubator-fluo-website/issues;>Fluo 
website
-  Sending an email to our mailing list at d...@fluo.apache.org
-
-
 Contributions
 
-Contributions are welcome to all Apache Fluo projects! All projects follow 
a http://www.apache.org/foundation/glossary.html#ReviewThenCommit;>review-then-commit
 process. If you are interested in contributing, read our How To Contribute page.
+Contributions are welcome to all Apache Fluo projects! All projects follow a
+http://www.apache.org/foundation/glossary.html#ReviewThenCommit;>review-then-commit
 process. If you are interested in contributing, read our How To
+Contribute page.
 
 
   

-- 
To stop receiving notification emails like this one, please contact
['"comm...@fluo.apache.org" <comm...@fluo.apache.org>'].


[incubator-fluo-recipes] branch 1.1.0-incubating-rc1-next created (now c53a8f8)

2017-06-12 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a change to branch 1.1.0-incubating-rc1-next
in repository https://gitbox.apache.org/repos/asf/incubator-fluo-recipes.git.


  at c53a8f8  [maven-release-plugin] prepare for next development iteration

This branch includes the following new commits:

 new 4769fa9  [maven-release-plugin] prepare release 
rel/fluo-recipes-1.1.0-incubating
 new c53a8f8  [maven-release-plugin] prepare for next development iteration

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


-- 
To stop receiving notification emails like this one, please contact
['"comm...@fluo.apache.org" <comm...@fluo.apache.org>'].


[incubator-fluo-recipes] 01/02: [maven-release-plugin] prepare release rel/fluo-recipes-1.1.0-incubating

2017-06-12 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch 1.1.0-incubating-rc1-next
in repository https://gitbox.apache.org/repos/asf/incubator-fluo-recipes.git

commit 4769fa9a3a43af030de318c0423a7cae5c5eb4fe
Author: Keith Turner <ktur...@apache.org>
AuthorDate: Mon Jun 12 18:56:42 2017 -0400

[maven-release-plugin] prepare release rel/fluo-recipes-1.1.0-incubating
---
 modules/accumulo/pom.xml | 2 +-
 modules/core/pom.xml | 2 +-
 modules/kryo/pom.xml | 2 +-
 modules/spark/pom.xml| 2 +-
 modules/test/pom.xml | 2 +-
 pom.xml  | 4 ++--
 6 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/modules/accumulo/pom.xml b/modules/accumulo/pom.xml
index b4f183e..ec1744a 100644
--- a/modules/accumulo/pom.xml
+++ b/modules/accumulo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.1.0-incubating-SNAPSHOT
+1.1.0-incubating
 ../../pom.xml
   
   fluo-recipes-accumulo
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index dc95ac6..7b56b10 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.1.0-incubating-SNAPSHOT
+1.1.0-incubating
 ../../pom.xml
   
   fluo-recipes-core
diff --git a/modules/kryo/pom.xml b/modules/kryo/pom.xml
index 12baafd..6d26a7e 100644
--- a/modules/kryo/pom.xml
+++ b/modules/kryo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.1.0-incubating-SNAPSHOT
+1.1.0-incubating
 ../../pom.xml
   
   fluo-recipes-kryo
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index 12895a5..1a8d1c7 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.1.0-incubating-SNAPSHOT
+1.1.0-incubating
 ../../pom.xml
   
   fluo-recipes-spark
diff --git a/modules/test/pom.xml b/modules/test/pom.xml
index f495ac4..a407c55 100644
--- a/modules/test/pom.xml
+++ b/modules/test/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.1.0-incubating-SNAPSHOT
+1.1.0-incubating
 ../../pom.xml
   
   fluo-recipes-test
diff --git a/pom.xml b/pom.xml
index ec03b3d..29ab35c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
 1-incubating
   
   fluo-recipes
-  1.1.0-incubating-SNAPSHOT
+  1.1.0-incubating
   pom
   Apache Fluo (incubating) Recipes Parent
   Implementation of Common Fluo patterns
@@ -42,7 +42,7 @@
   
 
scm:git:https://gitbox.apache.org/repos/asf/incubator-fluo-recipes.git
 
scm:git:https://gitbox.apache.org/repos/asf/incubator-fluo-recipes.git
-HEAD
+rel/fluo-recipes-1.1.0-incubating
 https://gitbox.apache.org/repos/asf/incubator-fluo-recipes.git
   
   

-- 
To stop receiving notification emails like this one, please contact
"comm...@fluo.apache.org" <comm...@fluo.apache.org>.


[incubator-fluo-recipes] 01/02: Depend on Fluo 1.1.0

2017-06-12 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-fluo-recipes.git

commit 06acd645992b57b884407b1c64a517b57224d09f
Author: Keith Turner <ktur...@apache.org>
AuthorDate: Mon Jun 12 15:58:34 2017 -0400

Depend on Fluo 1.1.0
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 396c773..ec03b3d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -53,7 +53,7 @@
 1.6.6
 2.7.1
 13
-1.1.0-incubating-SNAPSHOT
+1.1.0-incubating
 2.6.3
 1.8
 1.8

-- 
To stop receiving notification emails like this one, please contact
"comm...@fluo.apache.org" <comm...@fluo.apache.org>.


[incubator-fluo-recipes] 02/02: fixed some javadoc warnings

2017-06-12 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-fluo-recipes.git

commit f363574471987d7be2a80f27975264e917e982e5
Author: Keith Turner <ktur...@apache.org>
AuthorDate: Mon Jun 12 17:41:55 2017 -0400

fixed some javadoc warnings
---
 .travis.yml|  2 +-
 .../fluo/recipes/accumulo/export/AccumuloExporter.java |  5 +++--
 .../fluo/recipes/accumulo/export/AccumuloReplicator.java   |  4 ++--
 .../recipes/accumulo/export/function/AccumuloExporter.java | 14 +++---
 .../java/org/apache/fluo/recipes/core/export/Exporter.java |  5 +
 .../apache/fluo/recipes/core/export/function/Exporter.java |  5 -
 6 files changed, 18 insertions(+), 17 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 9c48f7a..3640303 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -14,7 +14,7 @@
 language: java
 jdk:
   - oraclejdk8
-script: mvn -U verify
+script: mvn -U verify javadoc:jar
 sudo: false
 cache:
   directories:
diff --git 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
index b2bef84..5fbef06 100644
--- 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
+++ 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
@@ -24,8 +24,8 @@ import org.apache.fluo.api.config.FluoConfiguration;
 import org.apache.fluo.api.config.SimpleConfiguration;
 import org.apache.fluo.api.data.Bytes;
 import org.apache.fluo.api.data.RowColumn;
-import org.apache.fluo.recipes.core.export.ExportQueue.Options;
 import org.apache.fluo.recipes.accumulo.export.function.AccumuloTranslator;
+import org.apache.fluo.recipes.core.export.ExportQueue.Options;
 import org.apache.fluo.recipes.core.export.Exporter;
 import org.apache.fluo.recipes.core.export.SequencedExport;
 
@@ -88,7 +88,7 @@ public abstract class AccumuloExporter<K, V> extends 
Exporter<K, V> {
   /**
* Implementations of this method should translate the given SequencedExport 
to 0 or more
* Mutations.
-   * 
+   *
* @param export the input that should be translated to mutations
* @param consumer output mutations to this consumer
*/
@@ -116,6 +116,7 @@ public abstract class AccumuloExporter<K, V> extends 
Exporter<K, V> {
* @deprecated since 1.1.0 use
* {@link AccumuloTranslator#generateMutations(long, Map, Map, 
Consumer)}
*/
+  @Deprecated
   public static void generateMutations(long seq, Map<RowColumn, Bytes> oldData,
   Map<RowColumn, Bytes> newData, Consumer consumer) {
 AccumuloTranslator.generateMutations(seq, oldData, newData, consumer);
diff --git 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloReplicator.java
 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloReplicator.java
index c2b9ade..35567fe 100644
--- 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloReplicator.java
+++ 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloReplicator.java
@@ -24,7 +24,6 @@ import org.apache.accumulo.core.data.Mutation;
 import org.apache.accumulo.core.security.ColumnVisibility;
 import org.apache.fluo.api.data.Bytes;
 import org.apache.fluo.api.data.Column;
-import org.apache.fluo.recipes.accumulo.export.AccumuloExporter;
 import org.apache.fluo.recipes.accumulo.export.function.AccumuloTranslator;
 import org.apache.fluo.recipes.core.export.SequencedExport;
 import org.apache.fluo.recipes.core.transaction.LogEntry;
@@ -44,6 +43,7 @@ public class AccumuloReplicator extends 
AccumuloExporter<String, TxLog> {
* {@link 
org.apache.fluo.recipes.accumulo.export.function.AccumuloExporter} with
* {@link #getTranslator()} instead.
*/
+  @Deprecated
   @Override
   protected void translate(SequencedExport<String, TxLog> export, 
Consumer consumer) {
 generateMutations(export.getSequence(), export.getValue(), consumer);
@@ -51,7 +51,7 @@ public class AccumuloReplicator extends 
AccumuloExporter<String, TxLog> {
 
   /**
* Returns LogEntry filter for Accumulo replication.
-   * 
+   *
* @see 
RecordingTransaction#wrap(org.apache.fluo.api.client.TransactionBase, Predicate)
*/
   public static Predicate getFilter() {
diff --git 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/function/AccumuloExporter.java
 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/function/AccumuloExporter.java
index 039dc55..1da0560 100644
--- 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/function/AccumuloExporter.java
+++ 
b/modules/accumulo/sr

[incubator-fluo-recipes] branch master updated (416c109 -> f363574)

2017-06-12 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-fluo-recipes.git.


from 416c109  update NOTICE file for 2017
 new 06acd64  Depend on Fluo 1.1.0
 new f363574  fixed some javadoc warnings

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .travis.yml|  2 +-
 .../fluo/recipes/accumulo/export/AccumuloExporter.java |  5 +++--
 .../fluo/recipes/accumulo/export/AccumuloReplicator.java   |  4 ++--
 .../recipes/accumulo/export/function/AccumuloExporter.java | 14 +++---
 .../java/org/apache/fluo/recipes/core/export/Exporter.java |  5 +
 .../apache/fluo/recipes/core/export/function/Exporter.java |  5 -
 pom.xml|  2 +-
 7 files changed, 19 insertions(+), 18 deletions(-)

-- 
To stop receiving notification emails like this one, please contact
['"comm...@fluo.apache.org" <comm...@fluo.apache.org>'].


[incubator-fluo] branch 1.1.0-incubating-rc1 deleted (was ad8ee49)

2017-06-12 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a change to branch 1.1.0-incubating-rc1
in repository https://gitbox.apache.org/repos/asf/incubator-fluo.git.


 was ad8ee49  [maven-release-plugin] prepare release 
rel/fluo-1.1.0-incubating

The revisions that were on this branch are still contained in
other references; therefore, this change does not discard any commits
from the repository.

-- 
To stop receiving notification emails like this one, please contact
['"comm...@fluo.apache.org" <comm...@fluo.apache.org>'].


[incubator-fluo] branch 1.1.0-incubating-rc1-next deleted (was 2f6f1bb)

2017-06-12 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a change to branch 1.1.0-incubating-rc1-next
in repository https://gitbox.apache.org/repos/asf/incubator-fluo.git.


 was 2f6f1bb  [maven-release-plugin] prepare for next development iteration

The revisions that were on this branch are still contained in
other references; therefore, this change does not discard any commits
from the repository.

-- 
To stop receiving notification emails like this one, please contact
['"comm...@fluo.apache.org" <comm...@fluo.apache.org>'].


[incubator-fluo] branch master updated (72d1813 -> ad1042d)

2017-06-12 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-fluo.git.


from 72d1813  Fixes #868 - Update voting text in release candidate script 
(#869)
 add ad8ee49  [maven-release-plugin] prepare release 
rel/fluo-1.1.0-incubating
 add 2f6f1bb  [maven-release-plugin] prepare for next development iteration
 new ad1042d  Merge branch '1.1.0-incubating-rc1-next'

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 modules/accumulo/pom.xml | 2 +-
 modules/api/pom.xml  | 2 +-
 modules/cluster/pom.xml  | 2 +-
 modules/core/pom.xml | 2 +-
 modules/distribution/pom.xml | 2 +-
 modules/integration/pom.xml  | 2 +-
 modules/mapreduce/pom.xml| 2 +-
 modules/mini/pom.xml | 2 +-
 pom.xml  | 2 +-
 9 files changed, 9 insertions(+), 9 deletions(-)

-- 
To stop receiving notification emails like this one, please contact
['"comm...@fluo.apache.org" <comm...@fluo.apache.org>'].


svn commit: r20008 - /release/incubator/fluo/KEYS

2017-06-12 Thread kturner
Author: kturner
Date: Mon Jun 12 17:13:08 2017
New Revision: 20008

Log:
Updated key for Keith Turner

Modified:
release/incubator/fluo/KEYS

Modified: release/incubator/fluo/KEYS
==
--- release/incubator/fluo/KEYS (original)
+++ release/incubator/fluo/KEYS Mon Jun 12 17:13:08 2017
@@ -76,6 +76,7 @@ cVX01+E7tnKRPcAZoqDYsNwR3LsZYqmZBZsRmyUI
 -END PGP PUBLIC KEY BLOCK-
 
 pub   4096R/352ACF76 2011-11-02
+uid  Keith Turner (CODE SIGNING KEY) <ktur...@apache.org>
 uid  Richard Keith Turner (CODE SIGNING KEY) <ke...@deenlo.com>
 sub   4096R/F299A8F3 2011-11-02
 
@@ -106,28 +107,41 @@ xUJL/qJmLHTitc0TYblqDL6wWWmam2FqqouNvJU3
 UWwu5mmfXJ1f6F6qImspoR03wAcBjgxJsP1Otnw2BrcH1xOuOVq5s9XUZxgLIcdf
 8FV4jJN/QgNOuwVMsio9jvvmONpNVG5CvoFhnUBXWC28b42B/4/uOe8HiBzeVJp/
 smWH/ID9TTYG/uSwD3VU2XiCt2fF1qftyqmcvUIeZgo25bFVUwb3OzQzrgpk+l4Z
-wlw3jLhQuQINBE6xlWgBEADDB6vzGL28p3ZxHxSdTT8n/G4dPh1ez9FGhU451hYa
-s2pOTMn1uTNCb14DVMEBnMd5pupWqTAO+gBnowCAI+8tMYLNlXS8eR8gogq4HNMa
-sQ/vKHjgXDqPRXaQVKA5eL2yEAhHd/Ucv2OJ4KM7W9DJcQWRaHS7+mYS7Q1uwXHD
-SW0DQL1Qp1KKI50ERIJqcfxCTg1bnjSVFatCbGnsYRNwd1n4ANwvLCEK5/xyL2J7
-fadCnGf1PVEfnERawxvKZ6M1F/o8WOVgCuxA9nK4Ta5EzYyZjRrdAUWop8I8KvfR
-BEQ4UWrNxw86imnkNJ0gj4oViXz8mgplbthO3R4GEHwA8Q7NwZtEONU6hFc6QkMe
-r5X/oWPDVEYD3SVTTCgepTKpfDervrBD76E36WoVZZYGvRbhrj6R1uyZ3PXZDy4H
-+In3Ul1vFyUpanw+yB+0DRS50JwwgvN+mq7N06l15hPYIHUYmos0WhvCcFWhp3Hc
-pG+bMpdpJThceEXcqLzsLZHA2M9k+15TfNhhvlxHb6tWHATyq5/LnzyfOTz6mXr+
-9LKTQwBdcmhvIchqApy49eqUuvTbzXCshgcsxyvtJ61ouvcslrIM5wpIZH1htfXz
-4rY0D4GUs85247rEKKjVCT9F1XM/EoBgXKhaYz2P5pnXzUPsYJFkbacx4VI18oM+
-nwARAQABiQIfBBgBAgAJBQJOsZVoAhsMAAoJEJqs+1Y1Ks92XuMQAIjAwIDQaGn9
-M592eFIFkMk6lnhQq5vsnTAhClpsaIWoih2lJBf0AsT634JFTX5fdf2Heg5ze5uu
-RuloKCCrg/DCope4CYhrJmjV4S399quWQsoayNae3p2yhzRtGC4j7DRDGQlnYifq
-0viqgaF6fZz17uiWemiy9o5bDULkcacBQWNoqlep5YPXKYE5s61YMfYwyM0aaFCE
-djoZs1KWk017eBnNOOaTzlL8d7QfecWPASLPYvxjkqNtvLnV/SAZ5RMwN1ji3WU1
-SufRdcYlBFgIi4KNUERiO0GRDW1QgEP3XLcQsFkQouF8YYfPeKjRmBzUhiJpw3kG
-ljKdSwIYaO4Yw4ybUup7nfL2PGtM6Gc8pqsPPEXLW5M8ZcZd3xvGFwRSA5j7QLqp
-2THvQZgw9ihTHcpWutxnJRj6lnawDfBoG+vs3IkAlrBnMUAuZLAWNO8KamcGxUvb
-RRd5IOLsttehhRi2lOdcOozHO0VI++8YoYx0uCHfSN3ZjZ8vhq9nWrPZcTSIUt0M
-f2mw/rDzNLXGdhN8KxeyD4Mnf73R8qwdcufzirc6dWf7OzKmhHzEuFMlZdS4/5Dy
-VANGObiCqmZlM3HzeW+sa0MFhhP7xuR0DP2WD1rOjKltauWfDem7R1+3Y7LZPI12
-/wi/NckKSy8bozMEId0/IN1PfmDCqYoh
-=RrrE
+wlw3jLhQtDRLZWl0aCBUdXJuZXIgKENPREUgU0lHTklORyBLRVkpIDxrdHVybmVy
+QGFwYWNoZS5vcmc+iQI5BBMBAgAjBQJZPrWCAhsDBwsJCAcDAgEGFQgCCQoLBBYC
+AwECHgECF4AACgkQmqz7VjUqz3Yg0g//cK8FRZy+wJg/REewqqFVI/O/JqSLueIc
+wq0xDMVW8tUi5rcd7qQsKDw+Dv/1at39awUOSui01U99QjU2kgNL94uYwe7OJjKg
+ZAepViCTsP0o7O4emGrWKydjA51w+rprbr9Y9XdUumZOAL2OVB1nl5QYRRxdsm7W
+y5ZD6/Usr4TywZtoS0wOrmx604Ash5Yv+Kf7cqBI061snYDTiS5RCJ8iD8wvpPRT
+IrJt6lS7O25ioOPQNkpcTBQGIwpqqf6Cgfe87h/mOYYHb1ZpAbQlsBfPUO23kU6V
+2EOpPq8SPAlGmVykQeq+lewSweDy30bESMP1TAh1K12Drw+Ulyfh9hUvIXoHeOjL
+bsAGxmyaSsZDC1ZrwkNi+kPxMK92p0LtEIzouELdWRxs2nRT0eANuKp6+aJS9fqq
+4dYYHQ8i66x1s1Y5gcVUiBcBDNz5gV75CXEfhYPgXzoeTglXG1LMWIq1BbyxJPof
+sZFGIY32Y8Qxf4dM0JQoaWlXbbxnoRvPY3zTyrLXNf5O09TmN6S8DCaGbPz0vzqS
+71WKRN+jcC/IfawYUUo2kYP8ycqHZViSnrVjmbhGo5vtcwe53iKbSqi4QmKGj12U
+7g+kK9MiPP9OzVihHTCfwNWgvXrmKIyOcRii0rok+Y2CEWgR+wzB1qLLQ4Spcxh2
+TWxwTnip0+O5Ag0ETrGVaAEQAMMHq/MYvbyndnEfFJ1NPyf8bh0+HV7P0UaFTjnW
+Fhqzak5MyfW5M0JvXgNUwQGcx3mm6lapMA76AGejAIAj7y0xgs2VdLx5HyCiCrgc
+0xqxD+8oeOBcOo9FdpBUoDl4vbIQCEd39Ry/Y4ngoztb0MlxBZFodLv6ZhLtDW7B
+ccNJbQNAvVCnUoojnQREgmpx/EJODVueNJUVq0JsaexhE3B3WfgA3C8sIQrn/HIv
+Ynt9p0KcZ/U9UR+cRFrDG8pnozUX+jxY5WAK7ED2crhNrkTNjJmNGt0BRainwjwq
+99EERDhRas3HDzqKaeQ0nSCPihWJfPyaCmVu2E7dHgYQfADxDs3Bm0Q41TqEVzpC
+Qx6vlf+hY8NURgPdJVNMKB6lMql8N6u+sEPvoTfpahVllga9FuGuPpHW7Jnc9dkP
+Lgf4ifdSXW8XJSlqfD7IH7QNFLnQnDCC836ars3TqXXmE9ggdRiaizRaG8JwVaGn
+cdykb5syl2klOFx4RdyovOwtkcDYz2T7XlN82GG+XEdvq1YcBPKrn8ufPJ85PPqZ
+ev70spNDAF1yaG8hyGoCnLj16pS69NvNcKyGByzHK+0nrWi69yyWsgznCkhkfWG1
+9fPitjQPgZSzznbjusQoqNUJP0XVcz8SgGBcqFpjPY/mmdfNQ+xgkWRtpzHhUjXy
+gz6fABEBAAGJAh8EGAECAAkFAk6xlWgCGwwACgkQmqz7VjUqz3Ze4xAAiMDAgNBo
+af0zn3Z4UgWQyTqWeFCrm+ydMCEKWmxohaiKHaUkF/QCxPrfgkVNfl91/Yd6DnN7
+m65G6WgoIKuD8MKil7gJiGsmaNXhLf32q5ZCyhrI1p7enbKHNG0YLiPsNEMZCWdi
+J+rS+KqBoXp9nPXu6JZ6aLL2jlsNQuRxpwFBY2iqV6nlg9cpgTmzrVgx9jDIzRpo
+UIR2OhmzUpaTTXt4Gc045pPOUvx3tB95xY8BIs9i/GOSo228udX9IBnlEzA3WOLd
+ZTVK59F1xiUEWAiLgo1QRGI7QZENbVCAQ/dctxCwWRCi4Xxhh894qNGYHNSGImnD
+eQaWMp1LAhho7hjDjJtS6nud8vY8a0zoZzymqw88Rctbkzxlxl3fG8YXBFIDmPtA
+uqnZMe9BmDD2KFMdyla63GclGPqWdrAN8Ggb6+zciQCWsGcxQC5ksBY07wpqZwbF
+S9tFF3kg4uy216GFGLaU51w6jMc7RUj77xihjHS4Id9I3dmNny+Gr2das9lxNIhS
+3Qx/abD+sPM0tcZ2E3wrF7IPgyd/vdHyrB1y5/OKtzp1Z/s7MqaEfMS4UyVl1Lj/
+kPJUA0Y5uIKqZmUzcfN5b6xrQwWGE/vG5HQM/ZYPWs6MqW1q5Z8N6btHX7djstk8
+jXb/CL81yQpLLxujMwQh3T8g3U9+YMKpiiE=
+=ze2u
 -END PGP PUBLIC KEY BLOCK-




[incubator-fluo] 01/01: [maven-release-plugin] prepare for next development iteration

2017-06-02 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch 1.1.0-incubating-rc1-next
in repository https://gitbox.apache.org/repos/asf/incubator-fluo.git

commit 2f6f1bb269d5e7f97ec3d67ad1e4637106d4325a
Author: Keith Turner <ktur...@apache.org>
AuthorDate: Fri Jun 2 12:20:49 2017 -0400

[maven-release-plugin] prepare for next development iteration
---
 modules/accumulo/pom.xml | 2 +-
 modules/api/pom.xml  | 2 +-
 modules/cluster/pom.xml  | 2 +-
 modules/core/pom.xml | 2 +-
 modules/distribution/pom.xml | 2 +-
 modules/integration/pom.xml  | 2 +-
 modules/mapreduce/pom.xml| 2 +-
 modules/mini/pom.xml | 2 +-
 pom.xml  | 4 ++--
 9 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/modules/accumulo/pom.xml b/modules/accumulo/pom.xml
index db13809..4da36f9 100644
--- a/modules/accumulo/pom.xml
+++ b/modules/accumulo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-project
-1.1.0-incubating
+1.2.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-accumulo
diff --git a/modules/api/pom.xml b/modules/api/pom.xml
index e5be115..0c85205 100644
--- a/modules/api/pom.xml
+++ b/modules/api/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-project
-1.1.0-incubating
+1.2.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-api
diff --git a/modules/cluster/pom.xml b/modules/cluster/pom.xml
index 638be85..a379536 100644
--- a/modules/cluster/pom.xml
+++ b/modules/cluster/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-project
-1.1.0-incubating
+1.2.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-cluster
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 7885531..6a068b4 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-project
-1.1.0-incubating
+1.2.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-core
diff --git a/modules/distribution/pom.xml b/modules/distribution/pom.xml
index b47832b..986f8d8 100644
--- a/modules/distribution/pom.xml
+++ b/modules/distribution/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-project
-1.1.0-incubating
+1.2.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo
diff --git a/modules/integration/pom.xml b/modules/integration/pom.xml
index 55aa7c7..5063341 100644
--- a/modules/integration/pom.xml
+++ b/modules/integration/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-project
-1.1.0-incubating
+1.2.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-integration
diff --git a/modules/mapreduce/pom.xml b/modules/mapreduce/pom.xml
index 37033a5..a4b641f 100644
--- a/modules/mapreduce/pom.xml
+++ b/modules/mapreduce/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-project
-1.1.0-incubating
+1.2.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-mapreduce
diff --git a/modules/mini/pom.xml b/modules/mini/pom.xml
index f6ab1ca..593ca0b 100644
--- a/modules/mini/pom.xml
+++ b/modules/mini/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-project
-1.1.0-incubating
+1.2.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-mini
diff --git a/pom.xml b/pom.xml
index e2da9f7..a6739d5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
 1-incubating
   
   fluo-project
-  1.1.0-incubating
+  1.2.0-incubating-SNAPSHOT
   pom
   Apache Fluo (incubating) Project
   An implementation of Percolator for Apache 
Accumulo
@@ -45,7 +45,7 @@
   
 
scm:git:https://gitbox.apache.org/repos/asf/incubator-fluo.git
 
scm:git:https://gitbox.apache.org/repos/asf/incubator-fluo.git
-rel/fluo-1.1.0-incubating
+HEAD
 https://gitbox.apache.org/repos/asf?p=incubator-fluo.git
   
   

-- 
To stop receiving notification emails like this one, please contact
"comm...@fluo.apache.org" <comm...@fluo.apache.org>.


incubator-fluo-website git commit: Jekyll build from gh-pages:7356ff3

2017-05-10 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site 1693d0314 -> 83e6f97d9


Jekyll build from gh-pages:7356ff3

Add mjwall as contributor


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/83e6f97d
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/83e6f97d
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/83e6f97d

Branch: refs/heads/asf-site
Commit: 83e6f97d9043e156ac727f34a712b8cab796068b
Parents: 1693d03
Author: Keith Turner 
Authored: Wed May 10 12:06:48 2017 -0400
Committer: Keith Turner 
Committed: Wed May 10 12:06:48 2017 -0400

--
 feed.xml  | 4 ++--
 people/index.html | 5 +
 2 files changed, 7 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/83e6f97d/feed.xml
--
diff --git a/feed.xml b/feed.xml
index bfd5867..df9e205 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Mon, 17 Apr 2017 16:55:41 +
-Mon, 17 Apr 2017 16:55:41 +
+Wed, 10 May 2017 16:06:44 +
+Wed, 10 May 2017 16:06:44 +
 Jekyll v3.3.1
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/83e6f97d/people/index.html
--
diff --git a/people/index.html b/people/index.html
index 0f63af0..50248c6 100644
--- a/people/index.html
+++ b/people/index.html
@@ -219,6 +219,11 @@ based on commits.
   http://www.ptech-llc.com/;>Peterson Technologies
   http://www.timeanddate.com/time/zones/et;>ET
 
+
+  https://github.com/mjwall;>Michael Wall
+   
+  http://www.timeanddate.com/time/zones/et;>ET
+
   
 
 



incubator-fluo git commit: closes #809 - cleanup buffered data

2017-05-10 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master ab7ce36c2 -> 4055cdfbe


closes #809 - cleanup buffered data

closes #832


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/4055cdfb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/4055cdfb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/4055cdfb

Branch: refs/heads/master
Commit: 4055cdfbe13eb34f8830db3ba2201c6428d26fd4
Parents: ab7ce36
Author: Michael Wall 
Authored: Tue May 9 08:21:36 2017 -0400
Committer: Keith Turner 
Committed: Wed May 10 09:55:13 2017 -0400

--
 .../org/apache/fluo/core/impl/TransactionImpl.java| 14 ++
 1 file changed, 10 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/4055cdfb/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java 
b/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java
index 322ae77..8313220 100644
--- a/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java
+++ b/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java
@@ -596,9 +596,16 @@ public class TransactionImpl extends 
AbstractTransactionBase implements AsyncTra
 
   @Override
   public synchronized void commit() throws CommitException {
-SyncCommitObserver sco = new SyncCommitObserver();
-commitAsync(sco);
-sco.waitForCommit();
+SyncCommitObserver sco = null;
+try {
+  sco = new SyncCommitObserver();
+  commitAsync(sco);
+  sco.waitForCommit();
+} finally {
+  updates.clear();
+  weakNotification = null;
+  columnsRead.clear();
+}
   }
 
   void deleteWeakRow() {
@@ -908,7 +915,6 @@ public class TransactionImpl extends 
AbstractTransactionBase implements AsyncTra
 cd.acceptedRows = new HashSet<>();
 
 
-
 ListenableFuture future = cd.bacw.apply(mutations);
 Futures.addCallback(future, new CommitCallback(cd) {
   @Override



incubator-fluo-recipes git commit: Updated for new way of registering observers

2017-05-09 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master 70a4239c8 -> d4cc0e343


Updated for new way of registering observers


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/d4cc0e34
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/d4cc0e34
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/d4cc0e34

Branch: refs/heads/master
Commit: d4cc0e343e24b2aa46f2bb04b476546f95d3a2bb
Parents: 70a4239
Author: Keith Turner 
Authored: Fri May 5 18:51:01 2017 -0400
Committer: Keith Turner 
Committed: Mon May 8 18:20:59 2017 -0400

--
 docs/accumulo-export-queue.md   |  2 +-
 docs/combine-queue.md   |  2 +-
 docs/export-queue.md|  2 +-
 .../recipes/core/combine/CombineQueueImpl.java  |  6 +++--
 .../fluo/recipes/core/export/ExportQueue.java   |  3 ++-
 .../fluo/recipes/core/map/CollisionFreeMap.java | 24 
 .../recipes/core/export/it/ExportTestBase.java  |  3 ++-
 7 files changed, 30 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/d4cc0e34/docs/accumulo-export-queue.md
--
diff --git a/docs/accumulo-export-queue.md b/docs/accumulo-export-queue.md
index b037b52..f9de6c6 100644
--- a/docs/accumulo-export-queue.md
+++ b/docs/accumulo-export-queue.md
@@ -93,7 +93,7 @@ Exporting to Accumulo is easy. Follow the steps below:
 new AccumuloExporter<>(EXPORT_QID, appCfg, new 
SimpleTranslator()));
 
 // An example observer created using a lambda that adds to the export 
queue.
-obsRegistry.register(OBS_COL, WEAK, (tx,row,col) -> {
+obsRegistry.forColumn(OBS_COL, WEAK).useObserver((tx,row,col) -> {
   // Read some data and do some work
 
   // Add results to export queue

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/d4cc0e34/docs/combine-queue.md
--
diff --git a/docs/combine-queue.md b/docs/combine-queue.md
index b3c1b13..0cce71b 100644
--- a/docs/combine-queue.md
+++ b/docs/combine-queue.md
@@ -176,7 +176,7 @@ public class WcObserverProvider implements ObserverProvider 
{
 CombineQueue wcMap = CombineQueue.getInstance(ID, 
ctx.getAppConfiguration());
 
 // Register observer that updates the Combine Queue
-obsRegistry.register(DocumentObserver.NEW_COL, STRONG, new 
DocumentObserver(wcMap));
+obsRegistry.forColumn(DocumentObserver.NEW_COL, STRONG).useObserver(new 
DocumentObserver(wcMap));
 
 // Used to join new and existing values for a key. The lambda sums all 
values and returns
 // Optional.empty() when the sum is zero. Returning Optional.empty() 
causes the key/value to be

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/d4cc0e34/docs/export-queue.md
--
diff --git a/docs/export-queue.md b/docs/export-queue.md
index 11e8d17..ec4b890 100644
--- a/docs/export-queue.md
+++ b/docs/export-queue.md
@@ -152,7 +152,7 @@ public class FluoApp {
   ExportQueue.getInstance(EQ_ID, ctx.getAppConfiguration());
 
   // register observer that will queue data to export
-  obsRegistry.register(UPDATE_COL, STRONG, new MyObserver(expQ));
+  obsRegistry.forColumn(UPDATE_COL, STRONG).useObserver(new 
MyObserver(expQ));
 
   // register observer that will export queued data
   expQ.registerObserver(obsRegistry, new CountExporter());

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/d4cc0e34/modules/core/src/main/java/org/apache/fluo/recipes/core/combine/CombineQueueImpl.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/combine/CombineQueueImpl.java
 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/combine/CombineQueueImpl.java
index bf97a5e..48d2651 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/combine/CombineQueueImpl.java
+++ 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/combine/CombineQueueImpl.java
@@ -53,6 +53,7 @@ class CombineQueueImpl implements CombineQueue {
   private Bytes dataPrefix;
   private Column notifyColumn;
 
+  private final String cqId;
   private final Class keyType;
   private final Class valType;
   private final int numBuckets;
@@ -61,6 +62,7 @@ class CombineQueueImpl implements CombineQueue {
 
   @SuppressWarnings("unchecked")
   CombineQueueImpl(String cqId, SimpleConfiguration appConfig) throws 

[3/3] incubator-fluo-recipes git commit: Updated ExportQ and CFM to use new ObserverProvider API

2017-05-03 Thread kturner
Updated ExportQ and CFM to use new ObserverProvider API

Created a new CombineQueue API that replaces the CollisionFreeMap.  The new
combineQ uses the new Fluo Observer APIs exclusively.  The CollisionFreeMap
only uses the old Fluo Observer APIs and was deprecated.

The ExportQueue was modified to support a Fluent configuration mechanism. This
can only be used when using the new Observer API.


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/70a4239c
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/70a4239c
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/70a4239c

Branch: refs/heads/master
Commit: 70a4239c837223a287c5eb1a396326ab7cc5be67
Parents: 0cda5ae
Author: Keith Turner 
Authored: Wed Mar 8 18:46:28 2017 -0500
Committer: Keith Turner 
Committed: Wed May 3 17:45:45 2017 -0400

--
 README.md   |   5 +-
 docs/accumulo-export-queue.md   |  84 ++--
 docs/cfm.md | 257 
 docs/combine-queue.md   | 224 +++
 docs/export-queue.md| 251 ++--
 .../accumulo/export/AccumuloExporter.java   |  69 ++--
 .../accumulo/export/AccumuloReplicator.java |  26 +-
 .../recipes/accumulo/export/AccumuloWriter.java | 169 
 .../export/function/AccumuloExporter.java   | 104 +
 .../export/function/AccumuloTranslator.java |  86 
 .../export/function/AccumuloWriter.java | 158 
 .../export/function/AeFluentConfigurator.java   | 104 +
 .../accumulo/export/AccumuloExportTest.java | 111 --
 .../accumulo/export/AccumuloTranslatorTest.java | 112 ++
 .../fluo/recipes/core/combine/ChangeImpl.java   |  48 +++
 .../recipes/core/combine/ChangeObserver.java|  52 +++
 .../fluo/recipes/core/combine/CombineQueue.java | 183 +
 .../recipes/core/combine/CombineQueueImpl.java  | 320 +++
 .../fluo/recipes/core/combine/Combiner.java |  51 +++
 .../recipes/core/combine/CqConfigurator.java| 148 +++
 .../fluo/recipes/core/combine/CqOptimizer.java  |  70 
 .../recipes/core/combine/InitializerImpl.java   |  52 +++
 .../fluo/recipes/core/combine/InputImpl.java|  68 
 .../recipes/core/combine/SummingCombiner.java   |  37 ++
 .../fluo/recipes/core/export/ExportBucket.java  |   1 +
 .../fluo/recipes/core/export/ExportEntry.java   |   1 +
 .../recipes/core/export/ExportObserver.java | 106 +
 .../recipes/core/export/ExportObserverImpl.java |  91 +
 .../fluo/recipes/core/export/ExportQueue.java   | 221 +++
 .../fluo/recipes/core/export/Exporter.java  |   7 +-
 .../recipes/core/export/FluentConfigurator.java | 156 
 .../recipes/core/export/MemLimitIterator.java   |  54 +++
 .../recipes/core/export/function/Exporter.java  |  87 +
 .../fluo/recipes/core/map/CollisionFreeMap.java | 388 ---
 .../core/map/CollisionFreeMapObserver.java  |   2 +
 .../apache/fluo/recipes/core/map/Combiner.java  |   4 +
 .../recipes/core/map/NullUpdateObserver.java|   1 +
 .../apache/fluo/recipes/core/map/Update.java|  12 +
 .../fluo/recipes/core/map/UpdateObserver.java   |   7 +-
 .../fluo/recipes/core/types/TypedObserver.java  |   6 +-
 .../fluo/recipes/core/combine/OptionsTest.java  |  48 +++
 .../fluo/recipes/core/combine/SplitsTest.java   |  66 
 .../core/combine/it/CombineQueueTreeIT.java | 281 ++
 .../fluo/recipes/core/common/TestGrouping.java  |  21 +-
 .../fluo/recipes/core/export/OptionsTest.java   |  72 +++-
 .../core/export/it/DocumentObserver.java|  27 +-
 .../recipes/core/export/it/ExportTestBase.java  |  40 +-
 .../fluo/recipes/core/map/OptionsTest.java  |   1 +
 .../fluo/recipes/core/map/SplitsTest.java   |   1 +
 .../fluo/recipes/core/map/it/BigUpdateIT.java   |   2 +
 .../recipes/core/map/it/CollisionFreeMapIT.java |   2 +
 .../recipes/core/map/it/DocumentObserver.java   |   2 +
 .../recipes/core/map/it/WordCountCombiner.java  |   2 +
 .../recipes/core/map/it/WordCountObserver.java  |   2 +
 .../recipes/test/export/AccumuloExporterIT.java |  39 +-
 .../test/export/AccumuloReplicatorIT.java   |  27 +-
 .../recipes/test/export/SimpleExporter.java |  32 --
 57 files changed, 3257 insertions(+), 1341 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/70a4239c/README.md
--
diff --git a/README.md b/README.md
index fe511a6..75c105d 100644
--- a/README.md
+++ b/README.md
@@ -31,7 +31,8 @@ like Spark and Kryo.
 
 Recipes are documented below and in the [Recipes API 

incubator-fluo git commit: fixes #500 Made scanning for notifications scalable

2017-04-20 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master 2e8932670 -> 3da76dcf0


fixes #500 Made scanning for notifications scalable


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/3da76dcf
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/3da76dcf
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/3da76dcf

Branch: refs/heads/master
Commit: 3da76dcf06702dd9cd2e9b04fd9990cc0be5b151
Parents: 2e89326
Author: Keith Turner 
Authored: Fri Apr 7 18:48:27 2017 -0400
Committer: Keith Turner 
Committed: Thu Apr 20 22:12:01 2017 -0400

--
 .../fluo/core/impl/FluoConfigurationImpl.java   |  16 +-
 .../core/worker/NotificationFinderFactory.java  |   4 +-
 .../fluo/core/worker/NotificationProcessor.java |  89 -
 .../fluo/core/worker/TabletInfoCache.java   | 157 
 .../finder/hash/HashNotificationFinder.java | 204 --
 .../core/worker/finder/hash/ModulusParams.java  |  28 --
 .../worker/finder/hash/ParitionManager.java | 372 +++
 .../core/worker/finder/hash/PartitionInfo.java  |  98 +
 .../hash/PartitionInfoChangedException.java |  20 +
 .../hash/PartitionNotificationFinder.java   |  84 +
 .../fluo/core/worker/finder/hash/RangeSet.java  |  88 +
 .../fluo/core/worker/finder/hash/ScanTask.java  | 133 ---
 .../worker/finder/hash/SerializedSplits.java| 119 ++
 .../core/worker/finder/hash/TableRange.java | 113 ++
 .../fluo/core/worker/finder/hash/HashTest.java  |   2 +-
 .../finder/hash/PartitionManagerTest.java   | 103 +
 .../finder/hash/SerializedSplitsTest.java   |  79 
 .../core/worker/finder/hash/TableRangeTest.java | 125 +++
 .../apache/fluo/integration/impl/WorkerIT.java  |   6 +-
 .../java/org/apache/fluo/mini/MiniFluoImpl.java |   4 +-
 20 files changed, 1358 insertions(+), 486 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/3da76dcf/modules/core/src/main/java/org/apache/fluo/core/impl/FluoConfigurationImpl.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/core/impl/FluoConfigurationImpl.java
 
b/modules/core/src/main/java/org/apache/fluo/core/impl/FluoConfigurationImpl.java
index a9f5fd4..9af6feb 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/core/impl/FluoConfigurationImpl.java
+++ 
b/modules/core/src/main/java/org/apache/fluo/core/impl/FluoConfigurationImpl.java
@@ -16,7 +16,6 @@
 package org.apache.fluo.core.impl;
 
 import org.apache.fluo.api.config.FluoConfiguration;
-import org.apache.fluo.core.worker.finder.hash.ScanTask;
 
 /**
  * Contains implementation-related Fluo properties that should not be exposed 
in the API in
@@ -28,13 +27,16 @@ public class FluoConfigurationImpl {
 
   public static final String ORACLE_PORT_PROP = FLUO_IMPL_PREFIX + 
".oracle.port";
   public static final String WORKER_FINDER_PROP = FLUO_IMPL_PREFIX + 
".worker.finder";
+  public static final String WORKER_PARTITION_GROUP_SIZE = FLUO_IMPL_PREFIX
+  + ".worker.finder.partition.groupSize";
+  public static final int WORKER_PARTITION_GROUP_SIZE_DEFAULT = 7;
   public static final String METRICS_RESERVOIR_PROP = FLUO_IMPL_PREFIX + 
".metrics.reservoir";
-  public static final String MIN_SLEEP_TIME_PROP = FLUO_IMPL_PREFIX
-  + ScanTask.class.getSimpleName() + ".minSleep";
-  public static final int MIN_SLEEP_TIME_DEFAULT = 5000;
-  public static final String MAX_SLEEP_TIME_PROP = FLUO_IMPL_PREFIX
-  + ScanTask.class.getSimpleName() + ".maxSleep";
-  public static final int MAX_SLEEP_TIME_DEFAULT = 5 * 60 * 1000;
+  public static final String NTFY_FINDER_MIN_SLEEP_TIME_PROP = FLUO_IMPL_PREFIX
+  + ".worker.finder.minSleep";
+  public static final int NTFY_FINDER_MIN_SLEEP_TIME_DEFAULT = 5000;
+  public static final String NTFY_FINDER_MAX_SLEEP_TIME_PROP = FLUO_IMPL_PREFIX
+  + ".worker.finder.maxSleep";
+  public static final int NTFY_FINDER_MAX_SLEEP_TIME_DEFAULT = 5 * 60 * 1000;
 
   // Time period that each client will update ZK with their oldest active 
timestamp
   // If period is too short, Zookeeper may be overloaded. If too long, garbage 
collection

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/3da76dcf/modules/core/src/main/java/org/apache/fluo/core/worker/NotificationFinderFactory.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/core/worker/NotificationFinderFactory.java
 
b/modules/core/src/main/java/org/apache/fluo/core/worker/NotificationFinderFactory.java
index 92b0382..3938c07 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/core/worker/NotificationFinderFactory.java
+++ 

[1/2] incubator-fluo git commit: fixes #820 use a specific version of netty

2017-04-07 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master c4a69994e -> 2e8932670


fixes #820 use a specific version of netty


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/a052435b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/a052435b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/a052435b

Branch: refs/heads/master
Commit: a052435bd0bb7988e78e14fe47dc8e33091ff727
Parents: d6af386
Author: Keith Turner 
Authored: Thu Apr 6 15:58:59 2017 -0400
Committer: Keith Turner 
Committed: Thu Apr 6 18:01:19 2017 -0400

--
 modules/distribution/src/main/lib/fetch.sh | 3 +++
 1 file changed, 3 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/a052435b/modules/distribution/src/main/lib/fetch.sh
--
diff --git a/modules/distribution/src/main/lib/fetch.sh 
b/modules/distribution/src/main/lib/fetch.sh
index 95765a2..45d0914 100755
--- a/modules/distribution/src/main/lib/fetch.sh
+++ b/modules/distribution/src/main/lib/fetch.sh
@@ -95,6 +95,9 @@ extra)
   download org.slf4j:slf4j-api:jar:1.7.12
   download org.slf4j:slf4j-log4j12:jar:1.7.12 ./log4j
   download org.xerial.snappy:snappy-java:jar:1.0.5
+  # See https://github.com/apache/incubator-fluo/issues/820
+  download io.netty:netty:jar:3.9.9.Final
+
   echo -e "Done!\n"
   echo "NOTE - The dependencies downloaded have been tested with some versions 
of Hadoop, Zookeeper, and Accumulo."
   echo "There is no guarantee they will work with all versions. Fluo chose to 
defer dependency resolution to as"



[2/2] incubator-fluo git commit: Merge remote-tracking branch 'origin/fluo-820'

2017-04-07 Thread kturner
Merge remote-tracking branch 'origin/fluo-820'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/2e893267
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/2e893267
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/2e893267

Branch: refs/heads/master
Commit: 2e8932670ab5b1906a4f796233392d6c81b9ded9
Parents: c4a6999 a052435
Author: Keith Turner 
Authored: Fri Apr 7 11:15:10 2017 -0400
Committer: Keith Turner 
Committed: Fri Apr 7 11:15:10 2017 -0400

--
 modules/distribution/src/main/lib/fetch.sh | 3 +++
 1 file changed, 3 insertions(+)
--




incubator-fluo-recipes git commit: fixes #122 improved Spark documentation

2017-01-09 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master f724aa0e4 -> 4f11ec4d9


fixes #122 improved Spark documentation


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/4f11ec4d
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/4f11ec4d
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/4f11ec4d

Branch: refs/heads/master
Commit: 4f11ec4d982271c01aeb734ee0a6e9bc5d15e9d6
Parents: f724aa0
Author: Keith Turner 
Authored: Mon Jan 9 10:26:10 2017 -0500
Committer: Keith Turner 
Committed: Mon Jan 9 10:26:10 2017 -0500

--
 README.md   |  2 ++
 docs/spark.md   | 32 ++
 .../fluo/recipes/core/map/CollisionFreeMap.java |  3 +-
 .../fluo/recipes/spark/FluoSparkHelper.java | 34 +---
 4 files changed, 64 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/4f11ec4d/README.md
--
diff --git a/README.md b/README.md
index 27f6132..fe511a6 100644
--- a/README.md
+++ b/README.md
@@ -43,6 +43,7 @@ Recipes have common needs that are broken down into the 
following reusable compo
 * [Serialization][serialization] - Common code for serializing POJOs. 
 * [Transient Ranges][transient] - Standardized process for dealing with 
transient data.
 * [Table optimization][optimization] - Standardized process for optimizing the 
Fluo table.
+* [Spark integration][spark] - Spark+Fluo integration code.
 
 ### Usage
 
@@ -108,6 +109,7 @@ Below is a sample Maven POM containing all possible Fluo 
Recipes dependencies:
 [transient]: docs/transient.md
 [optimization]: docs/table-optimization.md
 [row-hasher]: docs/row-hasher.md
+[spark]: docs/spark.md
 [testing]: docs/testing.md
 [ti]: https://travis-ci.org/apache/incubator-fluo-recipes.svg?branch=master
 [tl]: https://travis-ci.org/apache/incubator-fluo-recipes

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/4f11ec4d/docs/spark.md
--
diff --git a/docs/spark.md b/docs/spark.md
new file mode 100644
index 000..197c189
--- /dev/null
+++ b/docs/spark.md
@@ -0,0 +1,32 @@
+
+# Apache Spark helper code
+
+Fluo Recipes has some helper code for [Apache Spark][spark].  Most of the 
helper code is currently
+related to bulk importing data into Accumulo.  This is useful for initializing 
a new Fluo table with
+historical data via Spark.  The Spark helper code is found at
+[modules/spark/src/main/java/org/apache/fluo/recipes/spark/][sdir].
+
+For information on using Spark to load data into Fluo, check out this [blog 
post][blog].
+
+If you know of other Spark+Fluo integration code that would be useful, then 
please consider [opening
+an issue](https://github.com/apache/fluo-recipes/issues/new).
+
+[spark]: https://spark.apache.org
+[sdir]: ../modules/spark/src/main/java/org/apache/fluo/recipes/spark/
+[blog]: https://fluo.apache.org/blog/2016/12/22/spark-load/
+

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/4f11ec4d/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
index 715d330..939e9ed 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
+++ 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
@@ -399,11 +399,10 @@ public class CollisionFreeMap {
   }
 
   /**
-   * A @link {@link CollisionFreeMap} stores data in its own data format in 
the Fluo table. When
+   * A {@link CollisionFreeMap} stores data in its own data format in the Fluo 
table. When
* initializing a Fluo table with something like Map Reduce or Spark, data 
will need to be written
* in this format. Thats the purpose of this method, it provide a simple 
class that can do this
* conversion.
-   *
*/
   public static  Initializer getInitializer(String mapId, int 
numBuckets,
   SimpleSerializer serializer) {

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/4f11ec4d/modules/spark/src/main/java/org/apache/fluo/recipes/spark/FluoSparkHelper.java
--
diff --git 
a/modules/spark/src/main/java/org/apache/fluo/recipes/spark/FluoSparkHelper.java
 

incubator-fluo-website git commit: Jekyll build from gh-pages:674215b

2016-12-22 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site 0fd076807 -> 518c7627b


Jekyll build from gh-pages:674215b

fix example in Spark blog post


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/518c7627
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/518c7627
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/518c7627

Branch: refs/heads/asf-site
Commit: 518c7627b0c9bfd5a2f93cdafbe674b224ad771e
Parents: 0fd0768
Author: Keith Turner 
Authored: Thu Dec 22 14:54:24 2016 -0500
Committer: Keith Turner 
Committed: Thu Dec 22 14:54:24 2016 -0500

--
 blog/2016/12/22/spark-load/index.html | 2 +-
 feed.xml  | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/518c7627/blog/2016/12/22/spark-load/index.html
--
diff --git a/blog/2016/12/22/spark-load/index.html 
b/blog/2016/12/22/spark-load/index.html
index 62a8332..f6164e2 100644
--- a/blog/2016/12/22/spark-load/index.html
+++ b/blog/2016/12/22/spark-load/index.html
@@ -135,7 +135,7 @@ can be created.  That’s what the example below shows.
   docRdd = docRdd.distinct(numPartitions);
   
   // Execute load transactions for unique documents.  Iin 
Java 8 lambda syntax below, 
-  // iter is of type IteratorString
+  // iter is of type IteratorDocument
   docRdd.foreachPartition(iter-{
 // Assume fluo.properties file was submitted with 
application
 FluoConfiguration fconf 
= new FluoConfiguration(new File("fluo.properties"));

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/518c7627/feed.xml
--
diff --git a/feed.xml b/feed.xml
index 1d11700..c39b657 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Thu, 22 Dec 2016 18:12:05 +
-Thu, 22 Dec 2016 18:12:05 +
+Thu, 22 Dec 2016 19:54:22 +
+Thu, 22 Dec 2016 19:54:22 +
 Jekyll v3.3.0
 
   
@@ -33,7 +33,7 @@ can be created.  That’s what the example below 
shows./p
   span class=ndocRdd/span span 
class=o=/span span 
class=ndocRdd/spanspan 
class=o./spanspan 
class=nadistinct/spanspan 
class=o(/spanspan 
class=nnumPartitions/spanspan 
class=o);/span
   
   span class=c1// Execute load transactions for unique 
documents.  Iin Java 8 lambda syntax below, /span
-  span class=c1// iter is of type 
Iteratorlt;Stringgt;/span
+  span class=c1// iter is of type 
Iteratorlt;Documentgt;/span
   span class=ndocRdd/spanspan 
class=o./spanspan 
class=naforeachPartition/spanspan 
class=o(/spanspan 
class=niter/spanspan 
class=o-gt;{/span
 span class=c1// Assume fluo.properties file was 
submitted with application/span
 span class=nFluoConfiguration/span span 
class=nfconf/span span 
class=o=/span span 
class=knew/span span 
class=nFluoConfiguration/spanspan 
class=o(/spanspan 
class=knew/span span 
class=nFile/spanspan 
class=o(/spanspan 
class=sfluo.properties/spanspan 
class=o));/span



incubator-fluo-website git commit: fix example in Spark blog post

2016-12-22 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/gh-pages fd2d8ec22 -> 674215b06


fix example in Spark blog post


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/674215b0
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/674215b0
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/674215b0

Branch: refs/heads/gh-pages
Commit: 674215b06dacdb4fbc4b6e67f96016aee3d85d78
Parents: fd2d8ec
Author: Keith Turner 
Authored: Thu Dec 22 13:24:04 2016 -0500
Committer: Keith Turner 
Committed: Thu Dec 22 13:24:04 2016 -0500

--
 _posts/blog/2016-12-22-spark-load.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/674215b0/_posts/blog/2016-12-22-spark-load.md
--
diff --git a/_posts/blog/2016-12-22-spark-load.md 
b/_posts/blog/2016-12-22-spark-load.md
index d494d9b..a1e7f75 100644
--- a/_posts/blog/2016-12-22-spark-load.md
+++ b/_posts/blog/2016-12-22-spark-load.md
@@ -28,7 +28,7 @@ public void dedupeAndLoad(JavaRDD docRdd, int 
numPartitions) {
   docRdd = docRdd.distinct(numPartitions);
   
   // Execute load transactions for unique documents.  Iin Java 8 lambda syntax 
below, 
-  // iter is of type Iterator
+  // iter is of type Iterator
   docRdd.foreachPartition(iter->{
 // Assume fluo.properties file was submitted with application
 FluoConfiguration fconf = new FluoConfiguration(new 
File("fluo.properties"));



incubator-fluo-website git commit: Added post about Spark+Fluo

2016-12-22 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/gh-pages a7d68d618 -> fd2d8ec22


Added post about Spark+Fluo


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/fd2d8ec2
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/fd2d8ec2
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/fd2d8ec2

Branch: refs/heads/gh-pages
Commit: fd2d8ec22fbe580a9f4d44bb91d31c7b5b900ed0
Parents: a7d68d6
Author: Keith Turner 
Authored: Tue Dec 20 18:26:07 2016 -0500
Committer: Keith Turner 
Committed: Thu Dec 22 13:10:19 2016 -0500

--
 _config.yml  |   2 +
 _posts/blog/2016-12-22-spark-load.md | 246 ++
 2 files changed, 248 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/fd2d8ec2/_config.yml
--
diff --git a/_config.yml b/_config.yml
index 32e7e38..578863d 100644
--- a/_config.yml
+++ b/_config.yml
@@ -50,6 +50,8 @@ api_base: "https://javadoc.io/doc/org.apache.fluo;
 api_static: "https://static.javadoc.io/org.apache.fluo;
 fluo_api_base: "https://javadoc.io/doc/org.apache.fluo/fluo-api;
 fluo_api_static: "https://static.javadoc.io/org.apache.fluo/fluo-api;
+fluo_recipes_core_static: 
"https://static.javadoc.io/org.apache.fluo/fluo-recipes-core;
+fluo_recipes_spark_static: 
"https://static.javadoc.io/org.apache.fluo/fluo-recipes-spark;
 old_api_base: "https://javadoc.io/doc/io.fluo;
 old_api_static: "https://static.javadoc.io/io.fluo;
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/fd2d8ec2/_posts/blog/2016-12-22-spark-load.md
--
diff --git a/_posts/blog/2016-12-22-spark-load.md 
b/_posts/blog/2016-12-22-spark-load.md
new file mode 100644
index 000..d494d9b
--- /dev/null
+++ b/_posts/blog/2016-12-22-spark-load.md
@@ -0,0 +1,246 @@
+---
+title: "Loading data into Fluo using Apache Spark"
+date: 2016-12-22 11:43:00 +
+author: Keith Turner
+reviewers: Mike Walch
+---
+
+[Apache Spark][spark] can be used to preprocess and load batches of data into 
Fluo.  For example
+Spark could be used to group data within a batch and then Fluo transactions 
could load groups of
+related data. This blog post offers some tips to help you get started writing 
to Fluo from Spark.
+
+### Executing load transactions in Spark
+
+Spark automatically serializes Java objects that are needed for remote 
execution.  When trying to
+use Fluo with Spark its important to understand what will serialize properly 
and what will not.
+Classes used to load data into Fluo like [FluoClient] and [LoaderExecutor] are 
not suitable for
+serialization.  These classes may have thread pools, resources in Zookeeper, 
transactions that are
+committing in the background, etc .  Therefore these classes must be 
instantiated at each remote process
+Spark creates.  One way to do this is with Spark's `foreachParition` method.  
This method will
+execute code locally at each RDD partition. Within each partition, a 
[LoaderExecutor]
+can be created.  That's what the example below shows. 
+
+```java
+ 
+public void dedupeAndLoad(JavaRDD docRdd, int numPartitions) {  
+
+  // Remove duplicate documents.
+  docRdd = docRdd.distinct(numPartitions);
+  
+  // Execute load transactions for unique documents.  Iin Java 8 lambda syntax 
below, 
+  // iter is of type Iterator
+  docRdd.foreachPartition(iter->{
+// Assume fluo.properties file was submitted with application
+FluoConfiguration fconf = new FluoConfiguration(new 
File("fluo.properties"));
+try(FluoClient client = FluoFactory.newClient(fconf); 
+LoaderExecutor le = client.newLoaderExecutor())
+{
+  while(iter.hasNext()) {
+le.execute(new DocumentLoader(iter.next()));
+  }
+}
+  });
+}
+```
+
+The example above requires that `fluo.properties` is available locally for each
+partition.  This can be accomplished with `--files` option when launching a 
Spark job.
+
+```
+spark-submit --class myApp.Load --files /fluo.properties 
myApp.jar
+```
+
+If FluoConfiguration were serializable, then Spark could automatically 
serialize and make a
+FluoConfiguration object available for each partition.  However, 
FluoConfiguration is not
+serializable as of Fluo 1.0.0.  This will be fixed in future releases of Fluo. 
 See [#813][fluo-813]
+for details and workarounds for 1.0.0.
+
+### Initializing Fluo table
+
+If you have a lot of existing data, then you could use Spark to initialize 
your Fluo table with
+historical data. There are two general ways to do this.  The simplest way is 
to use the

incubator-fluo-website git commit: Jekyll build from gh-pages:fd2d8ec

2016-12-22 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site 94539eab2 -> 0fd076807


Jekyll build from gh-pages:fd2d8ec

Added post about Spark+Fluo


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/0fd07680
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/0fd07680
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/0fd07680

Branch: refs/heads/asf-site
Commit: 0fd07680771b352d3d301d4096cbddb1ea76eb94
Parents: 94539ea
Author: Keith Turner 
Authored: Thu Dec 22 13:12:07 2016 -0500
Committer: Keith Turner 
Committed: Thu Dec 22 13:12:07 2016 -0500

--
 blog/2016/12/22/spark-load/index.html | 359 +
 feed.xml  | 305 ++--
 index.html|  10 +-
 news/index.html   |   8 +
 4 files changed, 609 insertions(+), 73 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/0fd07680/blog/2016/12/22/spark-load/index.html
--
diff --git a/blog/2016/12/22/spark-load/index.html 
b/blog/2016/12/22/spark-load/index.html
new file mode 100644
index 000..62a8332
--- /dev/null
+++ b/blog/2016/12/22/spark-load/index.html
@@ -0,0 +1,359 @@
+
+
+  
+
+
+
+
+https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/cosmo/bootstrap.min.css; 
rel="stylesheet" 
integrity="sha384-h21C2fcDk/eFsW9sC9h0dhokq5pDinLNklTKoxIZRUn3+hvmgQSffLLQ4G4l2eEr"
 crossorigin="anonymous">
+https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css;
 rel="stylesheet" 
integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN"
 crossorigin="anonymous">
+
+https://fluo.apache.org//blog/2016/12/22/spark-load/;>
+
+
+Loading data into Fluo using Apache Spark | Apache Fluo
+
+https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js";>
+https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"; 
integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa"
 crossorigin="anonymous">
+
+
+
+
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+  
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-55360307-1', 'auto');
+  ga('send', 'pageview');
+
+
+
+window.twttr = (function(d, s, id) {
+  var js, fjs = d.getElementsByTagName(s)[0],
+t = window.twttr || {};
+  if (d.getElementById(id)) return t;
+  js = d.createElement(s);
+  js.id = id;
+  js.src = "https://platform.twitter.com/widgets.js";;
+  fjs.parentNode.insertBefore(js, fjs);
+
+  t._e = [];
+  t.ready = function(f) {
+t._e.push(f);
+  };
+
+  return t;
+}(document, "script", "twitter-wjs"));
+
+  
+  
+
+  
+
+  
+
+  
+  
+  
+
+  
+  
+
+
+  
+Releases
+Tour
+Docs
+API
+
+  Community
+  
+Get Involved
+News Archive
+People
+Related Projects
+Powered By
+  
+
+
+  Contributing
+  
+How To Contribute
+Release Process
+  
+
+  
+  
+
+  Apache Software Foundation
+  
+https://www.apache.org;>Apache Homepage
+https://www.apache.org/licenses/LICENSE-2.0;>License
+https://www.apache.org/foundation/sponsorship;>Sponsorship
+https://www.apache.org/security;>Security
+https://www.apache.org/foundation/thanks;>Thanks
+https://www.apache.org/foundation/policies/conduct;>Code of 
Conduct
+  
+
+  
+
+  
+
+
+  
+  
+
+  Loading data into Fluo using Apache Spark
+  
+ Author : Keith Turner   
+ Reviewer(s) : Mike Walch  
+22 Dec 2016
+   
+  https://twitter.com/intent/tweet?text=Loading data into Fluo using Apache 

[2/2] incubator-fluo git commit: Merge branch 'fluo-430'

2016-12-16 Thread kturner
Merge branch 'fluo-430'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/80833efa
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/80833efa
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/80833efa

Branch: refs/heads/master
Commit: 80833efa12c45964baa42080ef5db78f3b22a967
Parents: edbad34 c048395
Author: Keith Turner 
Authored: Fri Dec 16 13:38:24 2016 -0500
Committer: Keith Turner 
Committed: Fri Dec 16 13:38:24 2016 -0500

--
 modules/api/pom.xml  | 30 ++
 modules/core/pom.xml | 34 ++
 2 files changed, 64 insertions(+)
--




[1/2] incubator-fluo git commit: fixes #430 added checks to ensure log4j and logback are not used directly

2016-12-16 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master edbad3460 -> 80833efa1


fixes #430 added checks to ensure log4j and logback are not used directly


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/c0483959
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/c0483959
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/c0483959

Branch: refs/heads/master
Commit: c0483959af72dc9905398dee40f51ca12d29eb99
Parents: c896fc1
Author: Keith Turner 
Authored: Thu Dec 15 18:48:32 2016 -0500
Committer: Keith Turner 
Committed: Fri Dec 16 12:39:31 2016 -0500

--
 modules/api/pom.xml  | 30 ++
 modules/core/pom.xml | 34 ++
 2 files changed, 64 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/c0483959/modules/api/pom.xml
--
diff --git a/modules/api/pom.xml b/modules/api/pom.xml
index 290967a..823eb5d 100644
--- a/modules/api/pom.xml
+++ b/modules/api/pom.xml
@@ -54,6 +54,36 @@
   
 
   
+
+org.apache.maven.plugins
+maven-checkstyle-plugin
+
+  
+logging-impl-check
+
+  check
+
+
+  
+
+  
+
+  
+  
+
+  
+
+  
+  true
+
+  
+
+  
+  
 net.revelc.code
 apilyzer-maven-plugin
 1.0.1

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/c0483959/modules/core/pom.xml
--
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index ec1526b..de20ac5 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -96,4 +96,38 @@
   test
 
   
+  
+
+  
+
+org.apache.maven.plugins
+maven-checkstyle-plugin
+
+  
+logging-impl-check
+
+  check
+
+
+  
+
+  
+
+  
+  
+
+  
+
+  
+  true
+
+  
+
+  
+
+  
 



incubator-fluo git commit: fixes #803 added test to ColumnValue

2016-12-09 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master f977834b8 -> edbad3460


fixes #803 added test to ColumnValue


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/edbad346
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/edbad346
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/edbad346

Branch: refs/heads/master
Commit: edbad3460a6e88d638a41f6cea959c16567a3d37
Parents: f977834
Author: Keith Turner 
Authored: Fri Dec 9 09:34:59 2016 -0500
Committer: Keith Turner 
Committed: Fri Dec 9 09:34:59 2016 -0500

--
 .../apache/fluo/api/data/ColumnValueTest.java   | 82 
 1 file changed, 82 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/edbad346/modules/api/src/test/java/org/apache/fluo/api/data/ColumnValueTest.java
--
diff --git 
a/modules/api/src/test/java/org/apache/fluo/api/data/ColumnValueTest.java 
b/modules/api/src/test/java/org/apache/fluo/api/data/ColumnValueTest.java
new file mode 100644
index 000..c88d8a3
--- /dev/null
+++ b/modules/api/src/test/java/org/apache/fluo/api/data/ColumnValueTest.java
@@ -0,0 +1,82 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+
+package org.apache.fluo.api.data;
+
+import java.util.Arrays;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+public class ColumnValueTest {
+
+
+
+  @Test
+  public void testEquals() {
+Column c1 = new Column("f1", "q1");
+Column c2 = new Column("f2", "q1");
+Column c3 = new Column("f1", "q2");
+Column c4 = new Column("f2", "q2");
+
+ColumnValue cv = new ColumnValue(c1, "v1");
+
+Assert.assertEquals(cv, cv);
+Assert.assertEquals(cv.hashCode(), cv.hashCode());
+Assert.assertEquals(new ColumnValue(c1, "v1"), cv);
+Assert.assertEquals(new ColumnValue(c1, "v1").hashCode(), cv.hashCode());
+Assert.assertNotEquals(new ColumnValue(c1, "v2"), cv);
+Assert.assertNotEquals(new ColumnValue(c1, "v2").hashCode(), 
cv.hashCode());
+
+for (Column c : Arrays.asList(c2, c3, c4)) {
+  for (String v : Arrays.asList("v1", "v2")) {
+ColumnValue ocv = new ColumnValue(c, v);
+Assert.assertNotEquals(ocv, cv);
+Assert.assertNotEquals(ocv.hashCode(), cv.hashCode());
+  }
+}
+
+Assert.assertNotEquals(cv, c1);
+Assert.assertNotEquals(cv, "v1");
+  }
+
+  @Test
+  public void testCompare() {
+Column c1 = new Column("f1", "q1");
+Column c2 = new Column("f2", "q1");
+
+ColumnValue cv1 = new ColumnValue(c1, "v1");
+ColumnValue cv2 = new ColumnValue(c2, "v1");
+ColumnValue cv3 = new ColumnValue(c1, "v2");
+ColumnValue cv4 = new ColumnValue(c1, "v1");
+
+Assert.assertTrue(cv1.compareTo(cv1) == 0);
+Assert.assertTrue(cv1.compareTo(cv4) == 0);
+Assert.assertTrue(cv1.compareTo(cv2) < 0);
+Assert.assertTrue(cv2.compareTo(cv1) > 0);
+Assert.assertTrue(cv1.compareTo(cv3) < 0);
+Assert.assertTrue(cv3.compareTo(cv1) > 0);
+  }
+
+  @Test
+  public void testGet() {
+Column c1 = new Column("f1", "q1");
+ColumnValue cv1 = new ColumnValue(c1, "v1");
+
+Assert.assertEquals("v1", cv1.getsValue());
+Assert.assertEquals("v1", cv1.getValue().toString());
+Assert.assertSame(c1, cv1.getColumn());
+  }
+}



incubator-fluo-website git commit: Jekyll build from gh-pages:a7d68d6

2016-12-05 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site 44e069797 -> 94539eab2


Jekyll build from gh-pages:a7d68d6

bugfix in ex1


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/94539eab
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/94539eab
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/94539eab

Branch: refs/heads/asf-site
Commit: 94539eab2717109e1325c821af8d170b3f03fa85
Parents: 44e0697
Author: Keith Turner 
Authored: Mon Dec 5 11:43:20 2016 -0500
Committer: Keith Turner 
Committed: Mon Dec 5 11:43:20 2016 -0500

--
 feed.xml   | 4 ++--
 tour/exercise-1/index.html | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/94539eab/feed.xml
--
diff --git a/feed.xml b/feed.xml
index b9b0556..90af534 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Wed, 30 Nov 2016 02:06:59 +
-Wed, 30 Nov 2016 02:06:59 +
+Mon, 05 Dec 2016 16:43:17 +
+Mon, 05 Dec 2016 16:43:17 +
 Jekyll v3.3.0
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/94539eab/tour/exercise-1/index.html
--
diff --git a/tour/exercise-1/index.html b/tour/exercise-1/index.html
index a45897b..87fda9c 100644
--- a/tour/exercise-1/index.html
+++ b/tour/exercise-1/index.html
@@ -637,7 +637,7 @@ following.
 wordCounter = new WordCounter(context.getAppConfiguration());
   }
 
-  private void adjustCounts(TransactionBase tx, int delta, String[] words) {
+  private void adjustCounts(TransactionBase tx, int delta, ListString 
words) {
 wordCounter.adjustCounts(tx, delta, words);
   }
 



incubator-fluo-website git commit: bugfix in ex1

2016-12-05 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/gh-pages e3a050345 -> a7d68d618


bugfix in ex1


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/a7d68d61
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/a7d68d61
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/a7d68d61

Branch: refs/heads/gh-pages
Commit: a7d68d618db3eb571859833f0461de2196f0b1cf
Parents: e3a0503
Author: Keith Turner 
Authored: Tue Nov 29 21:20:48 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 29 21:20:48 2016 -0500

--
 tour/exercise-1.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/a7d68d61/tour/exercise-1.md
--
diff --git a/tour/exercise-1.md b/tour/exercise-1.md
index abba332..8e3cd28 100644
--- a/tour/exercise-1.md
+++ b/tour/exercise-1.md
@@ -523,7 +523,7 @@ following.
 wordCounter = new WordCounter(context.getAppConfiguration());
   }
 
-  private void adjustCounts(TransactionBase tx, int delta, String[] words) {
+  private void adjustCounts(TransactionBase tx, int delta, List words) 
{
 wordCounter.adjustCounts(tx, delta, words);
   }
 ```



incubator-fluo git commit: Added integration test for timestamp skipping iter (TSI). Also made TSI more robust to Accumulo changing in future.

2016-12-05 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master c896fc16b -> f977834b8


Added integration test for timestamp skipping iter (TSI). Also made TSI more 
robust to Accumulo changing in future.


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/f977834b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/f977834b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/f977834b

Branch: refs/heads/master
Commit: f977834b876133528a160b769427439282cb1d7c
Parents: c896fc1
Author: Keith Turner 
Authored: Mon Nov 21 20:57:12 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 22 10:32:39 2016 -0500

--
 .../iterators/TimestampSkippingIterator.java|  34 --
 .../accumulo/Skip100StampsIterator.java | 106 +++
 .../integration/accumulo/TimeskippingIT.java|  71 +
 3 files changed, 205 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/f977834b/modules/accumulo/src/main/java/org/apache/fluo/accumulo/iterators/TimestampSkippingIterator.java
--
diff --git 
a/modules/accumulo/src/main/java/org/apache/fluo/accumulo/iterators/TimestampSkippingIterator.java
 
b/modules/accumulo/src/main/java/org/apache/fluo/accumulo/iterators/TimestampSkippingIterator.java
index a09ac3b..ec2a83f 100644
--- 
a/modules/accumulo/src/main/java/org/apache/fluo/accumulo/iterators/TimestampSkippingIterator.java
+++ 
b/modules/accumulo/src/main/java/org/apache/fluo/accumulo/iterators/TimestampSkippingIterator.java
@@ -20,6 +20,7 @@ import java.lang.reflect.Field;
 import java.util.Collection;
 import java.util.Map;
 
+import com.google.common.annotations.VisibleForTesting;
 import org.apache.accumulo.core.data.ByteSequence;
 import org.apache.accumulo.core.data.Key;
 import org.apache.accumulo.core.data.PartialKey;
@@ -50,9 +51,12 @@ public class TimestampSkippingIterator implements 
SortedKeyValueIterator source) {
+  public TimestampSkippingIterator(SortedKeyValueIterator source) {
 this.source = source;
   }
 
@@ -78,7 +82,7 @@ public class TimestampSkippingIterator implements 
SortedKeyValueIterator iter,
+  private static boolean setParent(SortedKeyValueIterator iter,
   SortedKeyValueIterator newParent) {
 try {
   if (iter instanceof WrappingIterator) {
 Field field = WrappingIterator.class.getDeclaredField("source");
 field.setAccessible(true);
 field.set(iter, newParent);
+return true;
   }
 } catch (NoSuchFieldException | IllegalArgumentException | 
IllegalAccessException e) {
   log.debug(e.getMessage(), e);
 }
+
+return false;
   }
 
-  private static void removeDeletingIterator(SortedKeyValueIterator source) {
+  private static boolean removeDeletingIterator(SortedKeyValueIterator source) {
 
 SortedKeyValueIterator prev = source;
 SortedKeyValueIterator parent = getParent(source);
@@ -174,9 +181,21 @@ public class TimestampSkippingIterator implements 
SortedKeyValueIterator delParent = getParent(parent);
   if (delParent != null) {
-setParent(prev, delParent);
+return setParent(prev, delParent);
   }
 }
+
+return false;
+  }
+
+  @VisibleForTesting
+  public final boolean shouldSeek() {
+/*
+ * This method is a saftey check to ensure the deleting iterator was 
removed. If this iterator
+ * was not removed for some reason, then the performance of seeking will 
be O(N^2). In the case
+ * where its not removed, it would be better to just scan forward.
+ */
+return !hasSeeked || removedDeletingIterator 

incubator-fluo-recipes git commit: fix bug in accumulo export docs

2016-11-30 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master a6edddeed -> f724aa0e4


fix bug in accumulo export docs


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/f724aa0e
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/f724aa0e
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/f724aa0e

Branch: refs/heads/master
Commit: f724aa0e425a9f2d3b2d226b1058572b892b33f8
Parents: a6eddde
Author: Keith Turner 
Authored: Tue Nov 29 21:45:40 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 29 21:45:40 2016 -0500

--
 docs/accumulo-export-queue.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/f724aa0e/docs/accumulo-export-queue.md
--
diff --git a/docs/accumulo-export-queue.md b/docs/accumulo-export-queue.md
index 00aadda..218e41e 100644
--- a/docs/accumulo-export-queue.md
+++ b/docs/accumulo-export-queue.md
@@ -72,7 +72,7 @@ Exporting to Accumulo is easy. Follow the steps below:
 String.class, String.class, 
numMapBuckets).setExporterConfiguration(exportTableCfg);
 
 // Configure export queue.  This will modify fluoConfig.
-ExportQueue.configure(fluoConfig, qeOpts);
+ExportQueue.configure(fluoConfig, eqOpts);
 
 // Initialize Fluo using fluoConfig
 ```



incubator-fluo-website git commit: Jekyll build from gh-pages:e3a0503

2016-11-29 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site 4c683d772 -> 44e069797


Jekyll build from gh-pages:e3a0503

Merge branch 'cfm-comment' into gh-pages


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/44e06979
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/44e06979
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/44e06979

Branch: refs/heads/asf-site
Commit: 44e0697976a021e3a7dd8838cdb9035904ad6e3a
Parents: 4c683d7
Author: Keith Turner 
Authored: Tue Nov 29 21:07:01 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 29 21:07:01 2016 -0500

--
 feed.xml   |  4 ++--
 tour/exercise-1/index.html | 12 +++-
 2 files changed, 5 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/44e06979/feed.xml
--
diff --git a/feed.xml b/feed.xml
index f1312b5..b9b0556 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Wed, 30 Nov 2016 00:22:42 +
-Wed, 30 Nov 2016 00:22:42 +
+Wed, 30 Nov 2016 02:06:59 +
+Wed, 30 Nov 2016 02:06:59 +
 Jekyll v3.3.0
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/44e06979/tour/exercise-1/index.html
--
diff --git a/tour/exercise-1/index.html b/tour/exercise-1/index.html
index 3607c7f..a45897b 100644
--- a/tour/exercise-1/index.html
+++ b/tour/exercise-1/index.html
@@ -330,17 +330,10 @@ incremented.
 
 package ft;
 
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
 
-import com.google.common.collect.ImmutableSet;
 import org.apache.fluo.api.client.TransactionBase;
-import org.apache.fluo.api.data.Bytes;
-import org.apache.fluo.api.data.Column;
-import org.apache.fluo.api.data.RowColumn;
+import org.apache.fluo.api.data.*;
 import org.apache.fluo.api.observer.AbstractObserver;
 
 public class ContentObserver extends AbstractObserver {
@@ -558,6 +551,7 @@ call them.
   }
 
   if(sum == 0) {
+//returning emtpy will cause the CFM to delete the 
key in Fluo's table
 return Optional.empty();
   } else {
 return Optional.of(sum);



incubator-fluo-website git commit: Jekyll build from gh-pages:31abb2c

2016-11-29 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site a876793c1 -> 4c683d772


Jekyll build from gh-pages:31abb2c

Update excercise 1 to add CFM and instructions on running in live instance.


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/4c683d77
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/4c683d77
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/4c683d77

Branch: refs/heads/asf-site
Commit: 4c683d772d26d158c63382c526c6cbf79b963755
Parents: a876793
Author: Keith Turner 
Authored: Tue Nov 29 19:22:44 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 29 19:22:44 2016 -0500

--
 feed.xml   |   4 +-
 tour/exercise-1/index.html | 544 +---
 tour/index.html|   2 +-
 3 files changed, 394 insertions(+), 156 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/4c683d77/feed.xml
--
diff --git a/feed.xml b/feed.xml
index 5a6b903..f1312b5 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Mon, 14 Nov 2016 17:18:06 +
-Mon, 14 Nov 2016 17:18:06 +
+Wed, 30 Nov 2016 00:22:42 +
+Wed, 30 Nov 2016 00:22:42 +
 Jekyll v3.3.0
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/4c683d77/tour/exercise-1/index.html
--
diff --git a/tour/exercise-1/index.html b/tour/exercise-1/index.html
index 7b37cd6..3607c7f 100644
--- a/tour/exercise-1/index.html
+++ b/tour/exercise-1/index.html
@@ -11,7 +11,7 @@
 https://fluo.apache.org//tour/exercise-1/;>
 
 
-Word count Exercise | Apache Fluo
+Word counts for unique documents exercise | Apache Fluo
 
 https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js";>
 https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"; 
integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa"
 crossorigin="anonymous">
@@ -107,7 +107,7 @@
 
 
 
-  Fluo Tour: Word count Exercise
+  Fluo Tour: Word counts for unique documents 
exercise
   Tour page 19 of 26
 
 
@@ -250,11 +250,8 @@ column.
 //line.
 mini.waitForObservers();
 
-System.out.println(" begin 
table dump ");
-try (Snapshot snap = 
client.newSnapshot()) {
-  snap.scanner().build().forEach(rcv 
- System.out.println("  " 
+ rcv));
-}
-System.out.println(" end 
table dump \n");
+FluoITHelper.printFluoTable(client);
+System.out.println();
   }
 
   private static void excercise(MiniFluo mini, FluoClient 
client) {
@@ -267,46 +264,46 @@ column.
 
 Once the TODOs in the DocLoader class are implemented, running Main should 
print out the following.
 
- begin table 
dump 
-  d:a6c4d1f doc content  Jebediah orbits Mun for 35 days.  No power, forgot 
solar panels.
-  d:a6c4d1f doc refc  1
-  d:a6c4d1f doc refs  referenced
-  d:cf8ddc0 doc content  Bill plans to rescue Jebediah after taking tourist to 
Minimus.
-  d:cf8ddc0 doc refc  1
-  d:cf8ddc0 doc refs  referenced
-  u:http://news.com/a23 uri hash  a6c4d1f
-  u:http://news.com/a24 uri hash  cf8ddc0
- end table dump 
-
- begin table dump 
-  d:a6c4d1f doc content  Jebediah orbits Mun for 35 days.  No power, forgot 
solar panels.
-  d:a6c4d1f doc refc  2
-  d:a6c4d1f doc refs  referenced
-  d:cf8ddc0 doc content  Bill plans to rescue Jebediah after taking tourist to 
Minimus.
-  d:cf8ddc0 doc refc  1
-  d:cf8ddc0 doc refs  referenced
-  u:http://news.com/a23 uri hash  a6c4d1f
-  u:http://news.com/a24 uri hash  cf8ddc0
-  u:http://oldnews.com/a23 uri hash  a6c4d1f
- end table dump 
-
- begin table dump 
-  d:2732ebc doc content  Crisis at KSC.  Tourist stuck at Minimus.  Bill 
forgot solar panels.
-  d:2732ebc doc refc  1
-  d:2732ebc doc refs  referenced
-  d:6658252 doc content  Jebediah orbits Mun for 38 days.  No power, forgot 
solar panels.
-  d:6658252 doc refc  1
-  d:6658252 doc refs  referenced
-  d:a6c4d1f doc content  Jebediah orbits Mun for 35 days.  No power, forgot 
solar panels.
-  d:a6c4d1f doc refc  1
-  d:a6c4d1f doc refs  referenced
-  d:cf8ddc0 doc content  Bill plans to rescue Jebediah after taking tourist to 
Minimus.
-  d:cf8ddc0 doc refc  0
-  d:cf8ddc0 doc refs  unreferenced
-  u:http://news.com/a23 uri hash  6658252
-  u:http://news.com/a24 uri hash  2732ebc
-  u:http://oldnews.com/a23 uri hash  a6c4d1f
- end table dump 
+== fluo 

incubator-fluo-website git commit: Add stuff from recipes needed for excercise 1 update

2016-11-29 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/fluo-tour b09ad4946 -> f47047ab9


Add stuff from recipes needed for excercise 1 update


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/f47047ab
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/f47047ab
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/f47047ab

Branch: refs/heads/fluo-tour
Commit: f47047ab910ca5035dcd4e48d6bccb5e4c65c959
Parents: b09ad49
Author: Keith Turner 
Authored: Tue Nov 29 11:46:54 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 29 15:47:23 2016 -0500

--
 pom.xml| 17 +
 src/main/java/ft/Main.java |  3 ++-
 2 files changed, 19 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/f47047ab/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 855b2e1..7cdbc50 100644
--- a/pom.xml
+++ b/pom.xml
@@ -14,6 +14,7 @@
 UTF-8
 1.7.2
 1.0.0-incubating
+1.0.0-incubating
   
 
   
@@ -73,5 +74,21 @@
   ${fluo.version}
   runtime
 
+
+  org.apache.fluo
+  fluo-recipes-core
+  ${fluo-recipes.version}
+
+
+  org.apache.fluo
+  fluo-recipes-kryo
+  ${fluo-recipes.version}
+  runtime
+
+
+  org.apache.fluo
+  fluo-recipes-test
+  ${fluo-recipes.version}
+
   
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/f47047ab/src/main/java/ft/Main.java
--
diff --git a/src/main/java/ft/Main.java b/src/main/java/ft/Main.java
index 9b0a7a2..a1a865d 100644
--- a/src/main/java/ft/Main.java
+++ b/src/main/java/ft/Main.java
@@ -13,6 +13,7 @@ import org.apache.fluo.api.config.*;
 import org.apache.fluo.api.data.*;
 import org.apache.fluo.api.mini.MiniFluo;
 import org.apache.fluo.api.observer.*;
+import org.apache.fluo.recipes.test.FluoITHelper;
 
 public class Main {
   public static void main(String[] args) throws Exception {
@@ -37,7 +38,7 @@ public class Main {
 }
   }
 
-  private static void preInit(FluoConfiguration fluoConfig) {
+  static void preInit(FluoConfiguration fluoConfig) {
 //this method does not need to be changed for earlier excercises in tour
   }
 



incubator-fluo git commit: Added some caching of string to bytes conversions for #800

2016-11-17 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master 25839df16 -> c896fc16b


Added some caching of string to bytes conversions for #800

 * Added some localized per transactions caching of string to bytes conversions
 * Optimized hashCode(), equals(), and compareTo() methods for data objects in 
API
 * Made transaction reuse passed in Bytes and Column objects when returning data
 * Optimized Bytes.toString() by weakly remembering the string that created it.


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/c896fc16
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/c896fc16
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/c896fc16

Branch: refs/heads/master
Commit: c896fc16bb6ab0af4df9e26554516a70c1ffa302
Parents: 25839df
Author: Keith Turner 
Authored: Wed Nov 16 19:32:22 2016 -0500
Committer: Keith Turner 
Committed: Thu Nov 17 14:45:10 2016 -0500

--
 .../fluo/api/client/AbstractSnapshotBase.java   |  38 ++-
 .../api/client/AbstractTransactionBase.java |   6 +-
 .../java/org/apache/fluo/api/data/Bytes.java|  36 +--
 .../java/org/apache/fluo/api/data/Column.java   |  18 +++-
 .../org/apache/fluo/api/data/ColumnValue.java   |  16 ++-
 .../org/apache/fluo/api/data/RowColumn.java |  17 +++-
 .../apache/fluo/api/data/RowColumnValue.java|  12 ++-
 .../org/apache/fluo/api/data/BytesTest.java |  12 +++
 .../org/apache/fluo/core/impl/Notification.java |   8 +-
 .../fluo/core/impl/ParallelSnapshotScanner.java |  18 +++-
 .../apache/fluo/core/impl/TransactionImpl.java  |  16 ++-
 .../fluo/core/impl/scanner/CellScannerImpl.java |  38 +--
 .../core/impl/scanner/ColumnScannerImpl.java|  14 +--
 .../fluo/core/impl/scanner/RowScannerImpl.java  |  15 ++-
 .../core/impl/scanner/ScannerBuilderImpl.java   |   4 +-
 .../org/apache/fluo/core/util/ByteUtil.java |   4 +
 .../fluo/core/util/CachedBytesConverter.java|  48 +
 .../fluo/core/util/CachedColumnConverter.java   | 100 +++
 .../org/apache/fluo/core/util/ColumnUtil.java   |   7 ++
 .../org/apache/fluo/core/util/Flutation.java|   4 +-
 .../apache/fluo/integration/impl/ScannerIT.java |  39 
 21 files changed, 409 insertions(+), 61 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/c896fc16/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
--
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
 
b/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
index 30b325a..69780b2 100644
--- 
a/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
+++ 
b/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
@@ -19,7 +19,9 @@ import java.util.Collection;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Map.Entry;
+import java.util.Objects;
 import java.util.Set;
+import java.util.WeakHashMap;
 
 import com.google.common.collect.Collections2;
 import com.google.common.collect.ImmutableSet;
@@ -35,6 +37,33 @@ import org.apache.fluo.api.data.RowColumn;
 
 public abstract class AbstractSnapshotBase implements SnapshotBase {
 
+  /*
+   * This map of String to Bytes is really only useful when user code is 
executing a transactions.
+   * Once a transaction is queued for commit, do not want this map to eat up 
memory. Thats why a
+   * weak map is used.
+   * 
+   * There is intentionally no reverse map from Bytes to String. Relying on 
two things for this.
+   * First, Bytes maintains a weak pointer to the string it was created with 
and returns this for
+   * toString(). Second, the actual Transaction implementation will under some 
circumstances return
+   * the Bytes object that was passed in.
+   */
+  private Map s2bCache = new WeakHashMap();
+
+  Bytes s2bConv(CharSequence cs) {
+Objects.requireNonNull(cs);
+if (cs instanceof String) {
+  String s = (String) cs;
+  Bytes b = s2bCache.get(s);
+  if (b == null) {
+b = Bytes.of(s);
+s2bCache.put(s, b);
+  }
+  return b;
+} else {
+  return Bytes.of(cs);
+}
+  }
+
   public Bytes get(Bytes row, Column column, Bytes defaultValue) {
 Bytes ret = get(row, column);
 if (ret == null) {
@@ -59,8 +88,7 @@ public abstract class AbstractSnapshotBase implements 
SnapshotBase {
 
   public Map> gets(Collection rows,
   Set columns) {
-Map> rcvs =
-get(Collections2.transform(rows, s -> Bytes.of(s)), columns);
+Map> rcvs = 

[2/2] incubator-fluo git commit: fixes #801 corrected collision tracking

2016-11-15 Thread kturner
fixes #801 corrected collision tracking


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/25839df1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/25839df1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/25839df1

Branch: refs/heads/master
Commit: 25839df1671608517b9a74b24aef575ec02567d7
Parents: 2e446e6
Author: Keith Turner 
Authored: Mon Nov 14 22:10:02 2016 -0500
Committer: Keith Turner 
Committed: Mon Nov 14 22:11:00 2016 -0500

--
 .../org/apache/fluo/core/impl/TransactionImpl.java| 14 --
 1 file changed, 8 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/25839df1/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java 
b/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java
index e2e6d32..07a14b4 100644
--- a/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java
+++ b/modules/core/src/main/java/org/apache/fluo/core/impl/TransactionImpl.java
@@ -381,14 +381,16 @@ public class TransactionImpl extends 
AbstractTransactionBase implements AsyncTra
 private Bytes pval;
 
 private HashSet acceptedRows;
-private Map rejected = new HashMap<>();
+private Map rejected = null;
 
 private void addPrimaryToRejected() {
   rejected = Collections.singletonMap(prow, Collections.singleton(pcol));
 }
 
 private void addToRejected(Bytes row, Set columns) {
-  rejected = new HashMap<>();
+  if (rejected == null) {
+rejected = new HashMap<>();
+  }
 
   Set ret = rejected.put(row, columns);
   if (ret != null) {
@@ -406,14 +408,14 @@ public class TransactionImpl extends 
AbstractTransactionBase implements AsyncTra
 
 @Override
 public String toString() {
-  return prow + " " + pcol + " " + pval + " " + rejected.size();
+  return prow + " " + pcol + " " + pval + " " + getRejected().size();
 }
 
 public String getShortCollisionMessage() {
   StringBuilder sb = new StringBuilder();
-  if (rejected.size() > 0) {
+  if (getRejected().size() > 0) {
 int numCollisions = 0;
-for (Set cols : rejected.values()) {
+for (Set cols : getRejected().values()) {
   numCollisions += cols.size();
 }
 
@@ -422,7 +424,7 @@ public class TransactionImpl extends 
AbstractTransactionBase implements AsyncTra
 sb.append("):");
 
 String sep = "";
-outer: for (Entry entry : rejected.entrySet()) {
+outer: for (Entry entry : 
getRejected().entrySet()) {
   Bytes row = entry.getKey();
   for (Column col : entry.getValue()) {
 sb.append(sep);



[1/2] incubator-fluo git commit: fixes #785 Added meaningful message to commit exception

2016-11-15 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master efee307c5 -> 25839df16


fixes #785 Added meaningful message to commit exception


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/2e446e6c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/2e446e6c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/2e446e6c

Branch: refs/heads/master
Commit: 2e446e6c10731e3446bb8c4e84d157ea265a2730
Parents: efee307
Author: Keith Turner 
Authored: Mon Nov 14 21:15:32 2016 -0500
Committer: Keith Turner 
Committed: Mon Nov 14 22:10:24 2016 -0500

--
 .../fluo/core/async/AsyncCommitObserver.java|  2 +-
 .../apache/fluo/core/async/CommitManager.java   |  4 +-
 .../fluo/core/async/SyncCommitObserver.java |  6 ++-
 .../core/client/LoaderExecutorAsyncImpl.java|  2 +-
 .../apache/fluo/core/impl/TransactionImpl.java  | 39 ++--
 .../fluo/core/log/TracingTransaction.java   |  4 +-
 .../apache/fluo/core/worker/WorkTaskAsync.java  |  2 +-
 7 files changed, 47 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/2e446e6c/modules/core/src/main/java/org/apache/fluo/core/async/AsyncCommitObserver.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/core/async/AsyncCommitObserver.java
 
b/modules/core/src/main/java/org/apache/fluo/core/async/AsyncCommitObserver.java
index 6a1e2ed..4e78f60 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/core/async/AsyncCommitObserver.java
+++ 
b/modules/core/src/main/java/org/apache/fluo/core/async/AsyncCommitObserver.java
@@ -41,6 +41,6 @@ public interface AsyncCommitObserver {
   /**
* Called when async commit of a transaction fails because it overlapped 
with another transaction
*/
-  void commitFailed();
+  void commitFailed(String msg);
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/2e446e6c/modules/core/src/main/java/org/apache/fluo/core/async/CommitManager.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/core/async/CommitManager.java 
b/modules/core/src/main/java/org/apache/fluo/core/async/CommitManager.java
index 67f465c..403fb66 100644
--- a/modules/core/src/main/java/org/apache/fluo/core/async/CommitManager.java
+++ b/modules/core/src/main/java/org/apache/fluo/core/async/CommitManager.java
@@ -112,9 +112,9 @@ public class CommitManager {
 }
 
 @Override
-public void commitFailed() {
+public void commitFailed(String msg) {
   try {
-aco.commitFailed();
+aco.commitFailed(msg);
   } finally {
 finish(TxResult.COMMIT_EXCEPTION);
   }

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/2e446e6c/modules/core/src/main/java/org/apache/fluo/core/async/SyncCommitObserver.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/core/async/SyncCommitObserver.java 
b/modules/core/src/main/java/org/apache/fluo/core/async/SyncCommitObserver.java
index 2053c99..314859e 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/core/async/SyncCommitObserver.java
+++ 
b/modules/core/src/main/java/org/apache/fluo/core/async/SyncCommitObserver.java
@@ -27,6 +27,7 @@ public class SyncCommitObserver implements 
AsyncCommitObserver {
   private volatile boolean committed = false;
   private volatile boolean aacked = false;
   private volatile Exception error = null;
+  private volatile String commitFailMsg = "";
 
   @Override
   public void committed() {
@@ -47,8 +48,9 @@ public class SyncCommitObserver implements 
AsyncCommitObserver {
   }
 
   @Override
-  public void commitFailed() {
+  public void commitFailed(String msg) {
 committed = false;
+commitFailMsg = msg;
 cdl.countDown();
   }
 
@@ -65,7 +67,7 @@ public class SyncCommitObserver implements 
AsyncCommitObserver {
 } else if (aacked) {
   throw new AlreadyAcknowledgedException();
 } else if (!committed) {
-  throw new CommitException();
+  throw new CommitException(commitFailMsg);
 }
   }
 }

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/2e446e6c/modules/core/src/main/java/org/apache/fluo/core/client/LoaderExecutorAsyncImpl.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/core/client/LoaderExecutorAsyncImpl.java
 
b/modules/core/src/main/java/org/apache/fluo/core/client/LoaderExecutorAsyncImpl.java
index be375c6..ad36fd2 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/core/client/LoaderExecutorAsyncImpl.java
+++ 

[2/2] incubator-fluo git commit: Merge remote-tracking branch 'origin/fluo-425'

2016-11-14 Thread kturner
Merge remote-tracking branch 'origin/fluo-425'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/efee307c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/efee307c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/efee307c

Branch: refs/heads/master
Commit: efee307c50108d7ad667d6f1d673a42e6d13091e
Parents: b568681 b0fbeff
Author: Keith Turner 
Authored: Mon Nov 14 17:40:16 2016 -0500
Committer: Keith Turner 
Committed: Mon Nov 14 17:40:16 2016 -0500

--
 docs/applications.md|   7 +-
 .../fluo/api/config/SimpleConfiguration.java|   2 -
 .../fluo/core/log/TracingCellScanner.java   |  51 ++
 .../fluo/core/log/TracingColumnScanner.java |  64 
 .../apache/fluo/core/log/TracingRowScanner.java |  42 +
 .../fluo/core/log/TracingScannerBuilder.java| 103 
 .../fluo/core/log/TracingTransaction.java   |   4 +-
 .../java/org/apache/fluo/core/util/Hex.java |  22 +++
 .../fluo/core/worker/ObserverContext.java   |   1 -
 .../fluo/integration/impl/ObserverConfigIT.java |   1 -
 .../org/apache/fluo/integration/log/LogIT.java  | 160 ++-
 11 files changed, 443 insertions(+), 14 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/efee307c/docs/applications.md
--



incubator-fluo-website git commit: Jekyll build from gh-pages:e31d7c8

2016-11-10 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site bc5bfd431 -> ecf039705


Jekyll build from gh-pages:e31d7c8

Blog post about immutable bytes


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/ecf03970
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/ecf03970
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/ecf03970

Branch: refs/heads/asf-site
Commit: ecf039705ad98d56b5eb547a9433b7bb23ea23d4
Parents: bc5bfd4
Author: Keith Turner 
Authored: Thu Nov 10 15:43:36 2016 -0500
Committer: Keith Turner 
Committed: Thu Nov 10 15:43:36 2016 -0500

--
 blog/2014/12/30/stress-test-long-run/index.html |   8 +-
 .../22/fluo-talk-at-accumulo-summit/index.html  |   8 +-
 .../beta-2-pre-release-stress-test/index.html   |   8 +-
 blog/2016/01/11/webindex-long-run/index.html|   8 +-
 blog/2016/05/17/webindex-long-run-2/index.html  |   8 +-
 .../2016/06/02/fluo-moving-to-apache/index.html |   8 +-
 blog/2016/11/10/immutable-bytes/index.html  | 322 +
 feed.xml| 351 +++
 index.html  |  10 +-
 news/index.html |   8 +
 10 files changed, 571 insertions(+), 168 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/ecf03970/blog/2014/12/30/stress-test-long-run/index.html
--
diff --git a/blog/2014/12/30/stress-test-long-run/index.html 
b/blog/2014/12/30/stress-test-long-run/index.html
index e929971..c975d2b 100644
--- a/blog/2014/12/30/stress-test-long-run/index.html
+++ b/blog/2014/12/30/stress-test-long-run/index.html
@@ -104,8 +104,12 @@
   
   
 
-  First long stress test run on Fluo
-  30 Dec 2014
+  First long stress test run on Fluo
+  
+ 
+
+30 Dec 2014
+   
   https://twitter.com/intent/tweet?text=First long stress test run on 
Fluo=https://fluo.apache.org//blog/2014/12/30/stress-test-long-run/=ApacheFluo=ApacheFluo;
 rel="nofollow" target="_blank" title="Share on Twitter">Twitter
 
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/ecf03970/blog/2015/05/22/fluo-talk-at-accumulo-summit/index.html
--
diff --git a/blog/2015/05/22/fluo-talk-at-accumulo-summit/index.html 
b/blog/2015/05/22/fluo-talk-at-accumulo-summit/index.html
index fc08031..b89b08a 100644
--- a/blog/2015/05/22/fluo-talk-at-accumulo-summit/index.html
+++ b/blog/2015/05/22/fluo-talk-at-accumulo-summit/index.html
@@ -104,8 +104,12 @@
   
   
 
-  Fluo talk at Accumulo Summit
-  22 May 2015
+  Fluo talk at Accumulo Summit
+  
+ 
+
+22 May 2015
+   
   https://twitter.com/intent/tweet?text=Fluo talk at Accumulo 
Summit=https://fluo.apache.org//blog/2015/05/22/fluo-talk-at-accumulo-summit/=ApacheFluo=ApacheFluo;
 rel="nofollow" target="_blank" title="Share on Twitter">Twitter
 
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/ecf03970/blog/2015/12/22/beta-2-pre-release-stress-test/index.html
--
diff --git a/blog/2015/12/22/beta-2-pre-release-stress-test/index.html 
b/blog/2015/12/22/beta-2-pre-release-stress-test/index.html
index c19d059..224176e 100644
--- a/blog/2015/12/22/beta-2-pre-release-stress-test/index.html
+++ b/blog/2015/12/22/beta-2-pre-release-stress-test/index.html
@@ -104,8 +104,12 @@
   
   
 
-  Beta 2 pre-release stress test
-  22 Dec 2015
+  Beta 2 pre-release stress test
+  
+ 
+
+22 Dec 2015
+   
   https://twitter.com/intent/tweet?text=Beta 2 pre-release stress 
test=https://fluo.apache.org//blog/2015/12/22/beta-2-pre-release-stress-test/=ApacheFluo=ApacheFluo;
 rel="nofollow" target="_blank" title="Share on Twitter">Twitter
 
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/ecf03970/blog/2016/01/11/webindex-long-run/index.html
--
diff --git a/blog/2016/01/11/webindex-long-run/index.html 
b/blog/2016/01/11/webindex-long-run/index.html
index 8cefdf9..efeee26 100644
--- a/blog/2016/01/11/webindex-long-run/index.html
+++ b/blog/2016/01/11/webindex-long-run/index.html
@@ -104,8 +104,12 @@
   
   
 
-  Running Webindex for 3 days on EC2
-  11 Jan 2016
+  Running Webindex for 3 days on EC2
+  
+ 
+
+11 Jan 2016
+   
   https://twitter.com/intent/tweet?text=Running Webindex for 3 days on 

incubator-fluo-website git commit: Blog post about immutable bytes

2016-11-10 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/gh-pages 77528d838 -> e31d7c810


Blog post about immutable bytes


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/e31d7c81
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/e31d7c81
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/e31d7c81

Branch: refs/heads/gh-pages
Commit: e31d7c810c0dee5b774c56756d79cca3ef0be388
Parents: 77528d8
Author: Keith Turner 
Authored: Thu Nov 10 15:39:31 2016 -0500
Committer: Keith Turner 
Committed: Thu Nov 10 15:41:43 2016 -0500

--
 _layouts/post.html|   8 +-
 _posts/blog/2016-11-09-immutable-bytes.md | 193 +
 2 files changed, 199 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/e31d7c81/_layouts/post.html
--
diff --git a/_layouts/post.html b/_layouts/post.html
index f61a0dc..82c56b4 100644
--- a/_layouts/post.html
+++ b/_layouts/post.html
@@ -2,8 +2,12 @@
 layout: default
 ---
 
-  {{ page.title }}
-  {{ page.date | date_to_string }}
+  {{ page.title }}
+  
+{% if page.author %} Author : {{ page.author }}  {% endif %} 
+{% if page.reviewers %} Reviewer(s) : {{ page.reviewers }}  {% endif %}
+{{ page.date | date_to_string }}
+   
   https://twitter.com/intent/tweet?text={{ page.title }}={{ site.url 
}}{{ page.url }}={{ site.twitter_username }}={{ 
site.twitter_username }}" rel="nofollow" target="_blank" title="Share on 
Twitter">Twitter
 
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/e31d7c81/_posts/blog/2016-11-09-immutable-bytes.md
--
diff --git a/_posts/blog/2016-11-09-immutable-bytes.md 
b/_posts/blog/2016-11-09-immutable-bytes.md
new file mode 100644
index 000..78baaa8
--- /dev/null
+++ b/_posts/blog/2016-11-09-immutable-bytes.md
@@ -0,0 +1,193 @@
+---
+title: "Java needs an immutable byte string"
+date: 2016-11-10 11:43:00 +
+author: Keith Turner
+reviewers: Christopher Tubbs, Mike Walch
+---
+
+## Fluo Data Model and Transactions
+
+Fluo uses a [data model][dm] composed of key/values.  Each key has four fields 
:
+*row*,*family*,*qualifier*,*visibility*.  Each of these key fields is a 
sequence of bytes.  Fluo
+transactions read key/values from a snapshot of a table.  Any changes a 
transaction makes is
+buffered until commit.  At the time of commit the changes are only made if no 
other transaction
+modified any of the key values.
+
+While designing the Fluo API we were uncertain about making Fluo's basic 
[POJOs] mutable or
+immutable.  In the end we decided to go with immutable types to make writing 
correct Fluo code
+easier.  One of the POJOs we created was [Bytes],  an immutable wrapper around 
a byte array.  We
+also created [BytesBuilder], which is analagous to StringBuilder, and makes it 
easy and efficient
+to construct Bytes.
+
+### What about the copies?
+
+Bytes requires a defensive copy at creation time.  When we were designing 
Fluo's API we were worried
+about this at first.  However a simple truth became apparent.  If the API took 
a mutable type, then
+all boundary points between the user and Fluo would require defensive copies.  
For example assume
+Fluo's API took byte arrays and consider the following code.
+
+```java
+//A Fluo transaction
+Transaction tx = ...
+byte[] row = ...
+
+tx.set(row, column1, value1);
+tx.set(row, column2, value2);
+tx.set(row, column3, value3);
+```
+
+Fluo will buffer changes until a transaction is committed.  In the example 
above since Fluo accepts
+a mutable row, it would be prudent to do a defensive copy each time `set()` is 
called above.
+
+In the code below where an immutable byte array wrapper is used, the calls to 
`set()` do not need to
+do a defensive copy.  So when comparing the two examples, the immutable byte 
wrapper results in less
+defensive copies.
+
+```java
+//A Fluo transaction
+Transaction tx = ...
+Bytes row = ...
+
+tx.set(row, column1, value1);
+tx.set(row, column2, value2);
+tx.set(row, column3, value3);
+```
+
+We really did not want to create Bytes and BytesBuilder types, however we 
could not find what we
+needed in Java's standard libraries.  The following sections discuss some of 
the options we
+considered.
+
+## Why not use String?
+
+Java's String type is an immutable wrapper around a char array.  In order to 
store a byte array in a
+String, Java must decode the byte array using a character set.  Some sequences 
of bytes do not map
+in some characters sets.  Therefore, trying to stuff arbitrary binary data in 
a String 

[1/2] incubator-fluo-website git commit: Jekyll build from gh-pages:77528d8

2016-11-08 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site fe707267b -> bc5bfd431


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/bc5bfd43/release/fluo-1.0.0-beta-1/index.html
--
diff --git a/release/fluo-1.0.0-beta-1/index.html 
b/release/fluo-1.0.0-beta-1/index.html
index f2da1d6..1b81268 100644
--- a/release/fluo-1.0.0-beta-1/index.html
+++ b/release/fluo-1.0.0-beta-1/index.html
@@ -29,6 +29,23 @@
 
 
 
+window.twttr = (function(d, s, id) {
+  var js, fjs = d.getElementsByTagName(s)[0],
+t = window.twttr || {};
+  if (d.getElementById(id)) return t;
+  js = d.createElement(s);
+  js.id = id;
+  js.src = "https://platform.twitter.com/widgets.js";;
+  fjs.parentNode.insertBefore(js, fjs);
+
+  t._e = [];
+  t.ready = function(f) {
+t._e.push(f);
+  };
+
+  return t;
+}(document, "script", "twitter-wjs"));
+
   
   
 
@@ -87,8 +104,9 @@
   
   
 
-  Fluo 1.0.0-beta-1 released
+  Fluo 1.0.0-beta-1 released
   09 Jun 2015
+  https://twitter.com/intent/tweet?text=Fluo 1.0.0-beta-1 
released=https://fluo.apache.org//release/fluo-1.0.0-beta-1/=ApacheFluo=ApacheFluo;
 rel="nofollow" target="_blank" title="Share on Twitter">Twitter
 
 
 
@@ -236,10 +254,8 @@ ballpark.
 
 
 
-
-
 
-  All releases can be found in the release 
archive
+  View all releases in the release 
archive
 
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/bc5bfd43/release/fluo-1.0.0-beta-2/index.html
--
diff --git a/release/fluo-1.0.0-beta-2/index.html 
b/release/fluo-1.0.0-beta-2/index.html
index 8e3a5f7..f5e74bb 100644
--- a/release/fluo-1.0.0-beta-2/index.html
+++ b/release/fluo-1.0.0-beta-2/index.html
@@ -29,6 +29,23 @@
 
 
 
+window.twttr = (function(d, s, id) {
+  var js, fjs = d.getElementsByTagName(s)[0],
+t = window.twttr || {};
+  if (d.getElementById(id)) return t;
+  js = d.createElement(s);
+  js.id = id;
+  js.src = "https://platform.twitter.com/widgets.js";;
+  fjs.parentNode.insertBefore(js, fjs);
+
+  t._e = [];
+  t.ready = function(f) {
+t._e.push(f);
+  };
+
+  return t;
+}(document, "script", "twitter-wjs"));
+
   
   
 
@@ -87,8 +104,9 @@
   
   
 
-  Fluo 1.0.0-beta-2 released
+  Fluo 1.0.0-beta-2 released
   12 Jan 2016
+  https://twitter.com/intent/tweet?text=Fluo 1.0.0-beta-2 
released=https://fluo.apache.org//release/fluo-1.0.0-beta-2/=ApacheFluo=ApacheFluo;
 rel="nofollow" target="_blank" title="Share on Twitter">Twitter
 
 
 
@@ -231,10 +249,8 @@ made.  The following API changes happened between beta-1 
and beta-2.
 
 
 
-
-
 
-  All releases can be found in the release 
archive
+  View all releases in the release 
archive
 
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/bc5bfd43/release/fluo-1.0.0-incubating/index.html
--
diff --git a/release/fluo-1.0.0-incubating/index.html 
b/release/fluo-1.0.0-incubating/index.html
index 8bb9526..014d1a8 100644
--- a/release/fluo-1.0.0-incubating/index.html
+++ b/release/fluo-1.0.0-incubating/index.html
@@ -29,6 +29,23 @@
 
 
 
+window.twttr = (function(d, s, id) {
+  var js, fjs = d.getElementsByTagName(s)[0],
+t = window.twttr || {};
+  if (d.getElementById(id)) return t;
+  js = d.createElement(s);
+  js.id = id;
+  js.src = "https://platform.twitter.com/widgets.js";;
+  fjs.parentNode.insertBefore(js, fjs);
+
+  t._e = [];
+  t.ready = function(f) {
+t._e.push(f);
+  };
+
+  return t;
+}(document, "script", "twitter-wjs"));
+
   
   
 
@@ -87,8 +104,9 @@
   
   
 
-  Apache Fluo 1.0.0-incubating released
+  Apache Fluo 1.0.0-incubating released
   14 Oct 2016
+  https://twitter.com/intent/tweet?text=Apache Fluo 1.0.0-incubating 
released=https://fluo.apache.org//release/fluo-1.0.0-incubating/=ApacheFluo=ApacheFluo;
 rel="nofollow" target="_blank" title="Share on Twitter">Twitter
 
 
 
@@ -210,10 +228,8 @@ day run of Webindex was conducted.
 
 
 
-
-
 
-  All releases can be found in the release 
archive
+  View all releases in the release 
archive
 
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/bc5bfd43/release/fluo-recipes-1.0.0-beta-1/index.html
--
diff --git a/release/fluo-recipes-1.0.0-beta-1/index.html 
b/release/fluo-recipes-1.0.0-beta-1/index.html
index f16d6b6..ba66cbf 100644
--- a/release/fluo-recipes-1.0.0-beta-1/index.html
+++ b/release/fluo-recipes-1.0.0-beta-1/index.html
@@ -29,6 +29,23 @@
 
 
 
+window.twttr = 

[2/2] incubator-fluo-website git commit: Jekyll build from gh-pages:77528d8

2016-11-08 Thread kturner
Jekyll build from gh-pages:77528d8

#40 - Minor code review updates


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/bc5bfd43
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/bc5bfd43
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/bc5bfd43

Branch: refs/heads/asf-site
Commit: bc5bfd431f023ede58f5f068ec90da3ccd82c075
Parents: fe70726
Author: Keith Turner 
Authored: Tue Nov 8 12:16:46 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 8 12:16:46 2016 -0500

--
 404.html| 17 ++
 api/archive/index.html  | 17 ++
 api/index.html  | 17 ++
 blog/2014/12/30/stress-test-long-run/index.html | 20 +++-
 .../22/fluo-talk-at-accumulo-summit/index.html  | 20 +++-
 .../beta-2-pre-release-stress-test/index.html   | 20 +++-
 blog/2016/01/11/webindex-long-run/index.html| 20 +++-
 blog/2016/05/17/webindex-long-run-2/index.html  | 20 +++-
 .../2016/06/02/fluo-moving-to-apache/index.html | 20 +++-
 docs/archive/index.html | 17 ++
 docs/fluo-recipes/1.0.0-beta-1/cfm/index.html   | 17 ++
 .../1.0.0-beta-1/export-queue/index.html| 17 ++
 docs/fluo-recipes/1.0.0-beta-1/index.html   | 17 ++
 .../1.0.0-beta-1/recording-tx/index.html| 17 ++
 .../1.0.0-beta-1/serialization/index.html   | 17 ++
 .../1.0.0-beta-1/table-optimization/index.html  | 17 ++
 .../1.0.0-beta-1/transient/index.html   | 17 ++
 .../1.0.0-beta-2/accumulo-export/index.html | 17 ++
 docs/fluo-recipes/1.0.0-beta-2/cfm/index.html   | 17 ++
 .../1.0.0-beta-2/export-queue/index.html| 17 ++
 docs/fluo-recipes/1.0.0-beta-2/index.html   | 17 ++
 .../1.0.0-beta-2/recording-tx/index.html| 17 ++
 .../1.0.0-beta-2/row-hasher/index.html  | 17 ++
 .../1.0.0-beta-2/serialization/index.html   | 17 ++
 .../1.0.0-beta-2/table-optimization/index.html  | 17 ++
 .../1.0.0-beta-2/testing/index.html | 17 ++
 .../1.0.0-beta-2/transient/index.html   | 17 ++
 .../accumulo-export-queue/index.html| 17 ++
 .../1.0.0-incubating/cfm/index.html | 17 ++
 .../1.0.0-incubating/export-queue/index.html| 17 ++
 docs/fluo-recipes/1.0.0-incubating/index.html   | 17 ++
 .../1.0.0-incubating/recording-tx/index.html| 17 ++
 .../1.0.0-incubating/row-hasher/index.html  | 17 ++
 .../1.0.0-incubating/serialization/index.html   | 17 ++
 .../table-optimization/index.html   | 17 ++
 .../1.0.0-incubating/testing/index.html | 17 ++
 .../1.0.0-incubating/transient/index.html   | 17 ++
 docs/fluo/1.0.0-alpha-1/index.html  | 17 ++
 docs/fluo/1.0.0-alpha-1/stress/index.html   | 17 ++
 docs/fluo/1.0.0-beta-1/applications/index.html  | 17 ++
 docs/fluo/1.0.0-beta-1/architecture/index.html  | 17 ++
 docs/fluo/1.0.0-beta-1/contributing/index.html  | 17 ++
 docs/fluo/1.0.0-beta-1/index.html   | 17 ++
 docs/fluo/1.0.0-beta-1/metrics/index.html   | 17 ++
 .../1.0.0-beta-1/mini-fluo-setup/index.html | 17 ++
 .../1.0.0-beta-1/prod-fluo-setup/index.html | 17 ++
 docs/fluo/1.0.0-beta-2/applications/index.html  | 17 ++
 docs/fluo/1.0.0-beta-2/architecture/index.html  | 17 ++
 docs/fluo/1.0.0-beta-2/contributing/index.html  | 17 ++
 docs/fluo/1.0.0-beta-2/grafana/index.html   | 17 ++
 docs/fluo/1.0.0-beta-2/index.html   | 17 ++
 docs/fluo/1.0.0-beta-2/metrics/index.html   | 17 ++
 .../1.0.0-beta-2/mini-fluo-setup/index.html | 17 ++
 .../1.0.0-beta-2/prod-fluo-setup/index.html | 17 ++
 .../1.0.0-incubating/applications/index.html| 17 ++
 .../1.0.0-incubating/architecture/index.html| 17 ++
 .../1.0.0-incubating/contributing/index.html| 17 ++
 docs/fluo/1.0.0-incubating/grafana/index.html   | 17 ++
 docs/fluo/1.0.0-incubating/index.html   | 17 ++
 docs/fluo/1.0.0-incubating/install/index.html   | 17 ++
 docs/fluo/1.0.0-incubating/metrics/index.html   | 17 ++
 docs/index.html

[2/2] incubator-fluo-website git commit: #40 - Minor code review updates

2016-11-08 Thread kturner
#40 - Minor code review updates


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/77528d83
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/77528d83
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/77528d83

Branch: refs/heads/gh-pages
Commit: 77528d838c89e17b146e0949cb20bbd9aca15251
Parents: ff477eb
Author: Mike Walch 
Authored: Tue Nov 8 11:58:28 2016 -0500
Committer: Mike Walch 
Committed: Tue Nov 8 11:58:28 2016 -0500

--
 _layouts/release.html | 6 ++
 index.html| 4 ++--
 2 files changed, 4 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/77528d83/_layouts/release.html
--
diff --git a/_layouts/release.html b/_layouts/release.html
index b96509a..b1f37d4 100644
--- a/_layouts/release.html
+++ b/_layouts/release.html
@@ -3,8 +3,8 @@ layout: default
 ---
 
   {{ page.title }}
-  https://twitter.com/intent/tweet?text={{ page.title }}={{ site.url 
}}{{ page.url }}={{ site.twitter_username }}={{ 
site.twitter_username }}" rel="nofollow" target="_blank" title="Share on 
Twitter">Twitter
   {{ page.date | date_to_string }}
+  https://twitter.com/intent/tweet?text={{ page.title }}={{ site.url 
}}{{ page.url }}={{ site.twitter_username }}={{ 
site.twitter_username }}" rel="nofollow" target="_blank" title="Share on 
Twitter">Twitter
 
 
 {% if page.historical %}
@@ -15,8 +15,6 @@ layout: default
   {{ content }}
 
 
-
-
 
-  All releases can be found in the release archive
+  View all releases in the release archive
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/77528d83/index.html
--
diff --git a/index.html b/index.html
index 1402471..301a3f2 100644
--- a/index.html
+++ b/index.html
@@ -7,8 +7,8 @@ html_title_override: true
 
   Apache Fluo lets users make incremental updates to large data 
sets stored in Apache Accumulo
Download
-  https://github.com/apache/incubator-fluo; target="_blank" class="btn 
btn-primary btn-sm navbar-btn">View on 
Github
-  https://twitter.com/apachefluo; target="_blank" class="btn 
btn-primary btn-sm navbar-btn">Follow
+  https://github.com/apache/incubator-fluo; target="_blank" class="btn 
btn-default btn-sm navbar-btn"> GitHub
+  https://twitter.com/apachefluo; target="_blank" class="btn 
btn-primary btn-sm navbar-btn"> Follow
 
 Overview
 Apache Fluo (incubating) is an open source implementation of https://research.google.com/pubs/pub36726.html; 
target="_blank">Percolator 



incubator-fluo git commit: Use faster byte comparison

2016-11-08 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master 389d00700 -> 8e08d89a5


Use faster byte comparison


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/8e08d89a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/8e08d89a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/8e08d89a

Branch: refs/heads/master
Commit: 8e08d89a50928a6757c0e8db90c6fb36e4a47eda
Parents: 389d007
Author: Keith Turner 
Authored: Tue Nov 8 08:18:25 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 8 08:18:25 2016 -0500

--
 .../java/org/apache/fluo/api/data/Bytes.java| 23 +++--
 .../org/apache/fluo/api/data/BytesTest.java | 27 
 2 files changed, 42 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/8e08d89a/modules/api/src/main/java/org/apache/fluo/api/data/Bytes.java
--
diff --git a/modules/api/src/main/java/org/apache/fluo/api/data/Bytes.java 
b/modules/api/src/main/java/org/apache/fluo/api/data/Bytes.java
index 2902772..89b111b 100644
--- a/modules/api/src/main/java/org/apache/fluo/api/data/Bytes.java
+++ b/modules/api/src/main/java/org/apache/fluo/api/data/Bytes.java
@@ -29,6 +29,7 @@ import java.util.Arrays;
 import java.util.Objects;
 
 import com.google.common.base.Preconditions;
+import com.google.common.primitives.UnsignedBytes;
 
 /**
  * Represents bytes in Fluo. Bytes is an immutable wrapper around a byte 
array. Bytes always copies
@@ -155,7 +156,7 @@ public final class Bytes implements Comparable, 
Serializable {
   }
 
   public void writeTo(OutputStream out) throws IOException {
-// since Bytes is immutable, its important the we do not let the internal 
byte array escape
+// since Bytes is immutable, its important that we do not let the internal 
byte array escape
 if (length <= 32) {
   int end = offset + length;
   for (int i = offset; i < end; i++) {
@@ -177,17 +178,23 @@ public final class Bytes implements Comparable, 
Serializable {
*/
   @Override
   public final int compareTo(Bytes other) {
-int minLen = Math.min(this.length(), other.length());
+if (this == other) {
+  return 0;
+} else if (this.length == this.data.length && other.length == 
other.data.length) {
+  return UnsignedBytes.lexicographicalComparator().compare(this.data, 
other.data);
+} else {
+  int minLen = Math.min(this.length(), other.length());
 
-for (int i = 0; i < minLen; i++) {
-  int a = (this.byteAt(i) & 0xff);
-  int b = (other.byteAt(i) & 0xff);
+  for (int i = 0; i < minLen; i++) {
+int a = (this.byteAt(i) & 0xff);
+int b = (other.byteAt(i) & 0xff);
 
-  if (a != b) {
-return a - b;
+if (a != b) {
+  return a - b;
+}
   }
+  return this.length() - other.length();
 }
-return this.length() - other.length();
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/8e08d89a/modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java
--
diff --git a/modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java 
b/modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java
index 641c9bf..720a1a3 100644
--- a/modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java
+++ b/modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java
@@ -86,10 +86,37 @@ public class BytesTest {
 Assert.assertEquals(-1, b1.compareTo(b2));
 Assert.assertEquals(1, b2.compareTo(b1));
 Assert.assertEquals(0, b1.compareTo(b3));
+Assert.assertEquals(0, b1.compareTo(b1));
 Assert.assertEquals(1, b1.compareTo(Bytes.EMPTY));
   }
 
   @Test
+  public void testCompareSubsequence() {
+Bytes b1 = Bytes.of("abcd");
+Bytes b2 = b1.subSequence(0, 3);
+Bytes b3 = Bytes.of("abc");
+Bytes b4 = Bytes.of("~abcde");
+Bytes b5 = b4.subSequence(1, 4);
+Bytes b6 = b4.subSequence(1, 5);
+
+for (Bytes ba : Arrays.asList(b2, b3, b5, b1.subSequence(0, 3))) {
+  for (Bytes bb : Arrays.asList(b2, b3, b5)) {
+Assert.assertEquals(0, ba.compareTo(bb));
+  }
+}
+
+Assert.assertEquals(1, b1.compareTo(b2));
+Assert.assertEquals(-1, b2.compareTo(b1));
+
+for (Bytes less : Arrays.asList(b2, b3, b5)) {
+  for (Bytes greater : Arrays.asList(b1, b4, b6)) {
+Assert.assertTrue(less.compareTo(greater) < 0);
+Assert.assertTrue(greater.compareTo(less) > 0);
+  }
+}
+  }
+
+  @Test
   public void testToByteBuffer() {
 Bytes b1 = Bytes.of("fluofluo");
 ByteBuffer buffer = b1.toByteBuffer();



incubator-fluo-website git commit: Jekyll build from gh-pages:ac6b75b

2016-11-08 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site a029bb90b -> fe707267b


Jekyll build from gh-pages:ac6b75b

Minor updates to Fluo Tour


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/fe707267
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/fe707267
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/fe707267

Branch: refs/heads/asf-site
Commit: fe707267b0fe0e088b5b906255bdba5b5d2075f2
Parents: a029bb9
Author: Keith Turner 
Authored: Tue Nov 8 06:58:05 2016 -0500
Committer: Keith Turner 
Committed: Tue Nov 8 06:58:05 2016 -0500

--
 feed.xml   | 4 ++--
 tour/exercise-1/index.html | 8 ++--
 tour/index.html| 4 +++-
 3 files changed, 11 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/fe707267/feed.xml
--
diff --git a/feed.xml b/feed.xml
index cd813d8..b509019 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Fri, 28 Oct 2016 19:43:51 +
-Fri, 28 Oct 2016 19:43:51 +
+Tue, 08 Nov 2016 11:58:02 +
+Tue, 08 Nov 2016 11:58:02 +
 Jekyll v3.2.1
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/fe707267/tour/exercise-1/index.html
--
diff --git a/tour/exercise-1/index.html b/tour/exercise-1/index.html
index fe76b3f..7d42bdb 100644
--- a/tour/exercise-1/index.html
+++ b/tour/exercise-1/index.html
@@ -94,9 +94,12 @@
   Tour page 19 of 26
 
 
-  This excercise gives you an opportunity to use everything you have 
learned so
+  This exercise gives you an opportunity to use everything you have learned 
so
 far to attempt writing a simple Fluo application.  A bare minimum of code,
-along with a conceptual sketch of a solution, is provided to get you 
started.
+along with a conceptual sketch of a solution, is provided to get you started.
+After completing this exercise, consider tweeting a link to your solution to
+https://twitter.com/hashtag/apachefluotour;>#apachefluotour.  If 
you have time, try to complete the exercise before
+looking at the solutions.
 
 The application should compute word counts for unique documents. This
 application should do the following.
@@ -501,6 +504,7 @@ observer as follows.
 these collisions is to use the CollisionFreeMap provided in Fluo Recipes. 
Currently Fluo Recipes is
 not released, this section will be updated with more information once it 
is.
 
+
 
 
 

incubator-fluo-recipes git commit: fix link in docs

2016-10-28 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master 4debb8b79 -> 240a78ad3


fix link in docs


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/240a78ad
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/240a78ad
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/240a78ad

Branch: refs/heads/master
Commit: 240a78ad311c17ac5e6f6b156606f6ec7d714370
Parents: 4debb8b
Author: Keith Turner 
Authored: Fri Oct 28 11:34:50 2016 -0400
Committer: Keith Turner 
Committed: Fri Oct 28 11:34:50 2016 -0400

--
 docs/accumulo-export-queue.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/240a78ad/docs/accumulo-export-queue.md
--
diff --git a/docs/accumulo-export-queue.md b/docs/accumulo-export-queue.md
index 8b4bf39..00aadda 100644
--- a/docs/accumulo-export-queue.md
+++ b/docs/accumulo-export-queue.md
@@ -107,5 +107,5 @@ Exporting to Accumulo is easy. Follow the steps below:
 
 [1]: export-queue.md
 [AccumuloExporter]: 
../modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
-[AccumuloReplicator]: 
../modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/DifferenceExport.java
+[AccumuloReplicator]: 
../modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloReplicator.java
 



[incubator-fluo-recipes] Git Push Summary

2016-10-27 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/1.0.0-incubating-rc0 [deleted] 2eb367e17


[incubator-fluo-recipes] Git Push Summary

2016-10-27 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/1.0.0-incubating-rc1-next [deleted] de7bee53d


[incubator-fluo-recipes] Git Push Summary

2016-10-27 Thread kturner
Repository: incubator-fluo-recipes
Updated Tags:  refs/tags/rel/fluo-recipes-1.0.0-incubating [created] a40a41e50


[2/3] incubator-fluo-recipes git commit: [maven-release-plugin] prepare for next development iteration

2016-10-27 Thread kturner
[maven-release-plugin] prepare for next development iteration


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/de7bee53
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/de7bee53
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/de7bee53

Branch: refs/heads/master
Commit: de7bee53d725466c61d325f3bd73c4a9bf233f4f
Parents: 682eff9
Author: Keith Turner 
Authored: Thu Oct 20 18:16:50 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 20 18:16:50 2016 -0400

--
 modules/accumulo/pom.xml | 2 +-
 modules/core/pom.xml | 2 +-
 modules/kryo/pom.xml | 2 +-
 modules/spark/pom.xml| 2 +-
 modules/test/pom.xml | 2 +-
 pom.xml  | 4 ++--
 6 files changed, 7 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/accumulo/pom.xml
--
diff --git a/modules/accumulo/pom.xml b/modules/accumulo/pom.xml
index a344319..b4f183e 100644
--- a/modules/accumulo/pom.xml
+++ b/modules/accumulo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-accumulo

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/core/pom.xml
--
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index f1eb998..dc95ac6 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-core

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/kryo/pom.xml
--
diff --git a/modules/kryo/pom.xml b/modules/kryo/pom.xml
index 7f1725b..12baafd 100644
--- a/modules/kryo/pom.xml
+++ b/modules/kryo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-kryo

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/spark/pom.xml
--
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index b505896..12895a5 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-spark

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/test/pom.xml
--
diff --git a/modules/test/pom.xml b/modules/test/pom.xml
index bdfb1b8..f495ac4 100644
--- a/modules/test/pom.xml
+++ b/modules/test/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-test

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 9188154..3332077 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
 1-incubating
   
   fluo-recipes
-  1.0.0-incubating
+  1.1.0-incubating-SNAPSHOT
   pom
   Apache Fluo (incubating) Recipes Parent
   Implementation of Common Fluo patterns
@@ -42,7 +42,7 @@
   
 
scm:git:https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
 
scm:git:https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
-rel/fluo-recipes-1.0.0-incubating
+HEAD
 
https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
   
   



incubator-fluo-recipes git commit: Added link to Balancing blog post

2016-10-27 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master e1d0aa796 -> 4ace42fd3


Added link to Balancing blog post


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/4ace42fd
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/4ace42fd
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/4ace42fd

Branch: refs/heads/master
Commit: 4ace42fd3b1b70e155f9232f3f30a6ea7ad7e163
Parents: e1d0aa7
Author: Keith Turner 
Authored: Thu Oct 27 13:11:56 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 27 13:11:56 2016 -0400

--
 docs/table-optimization.md | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/4ace42fd/docs/table-optimization.md
--
diff --git a/docs/table-optimization.md b/docs/table-optimization.md
index f170b77..7241473 100644
--- a/docs/table-optimization.md
+++ b/docs/table-optimization.md
@@ -19,7 +19,7 @@ limitations under the License.
 ## Background
 
 Recipes may need to make Accumulo specific table modifications for optimal
-performance.  Configuring the Accumulo tablet balancer and adding splits are
+performance.  Configuring the [Accumulo tablet balancer][3] and adding splits 
are
 two optimizations that are currently done.  Offering a standard way to do these
 optimizations makes it easier to use recipes correctly.  These optimizations
 are optional.  You could skip them for integration testing, but would probably
@@ -75,3 +75,4 @@ this mechanism, its not limited to use by exisitng recipes.
 
 [1]: 
../modules/core/src/main/java/org/apache/fluo/recipes/core/common/TableOptimizations.java
 [2]: 
../modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/ops/TableOperations.java
+[3]: 
http://accumulo.apache.org/blog/2015/03/20/balancing-groups-of-tablets.html



incubator-fluo-website git commit: Mention that tx are cross node on front page

2016-10-27 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/gh-pages d196ec689 -> 281dafe0d


Mention that tx are cross node on front page


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/281dafe0
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/281dafe0
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/281dafe0

Branch: refs/heads/gh-pages
Commit: 281dafe0d43ebefbf8196e5482dd7628ff0a91fa
Parents: d196ec6
Author: Keith Turner 
Authored: Tue Oct 25 22:12:01 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 27 12:52:45 2016 -0400

--
 index.html | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/281dafe0/index.html
--
diff --git a/index.html b/index.html
index cb89860..640ae13 100644
--- a/index.html
+++ b/index.html
@@ -56,7 +56,7 @@ html_title_override: true
 
 
   Core API
-  The core Fluo API supports simple transactional 
updates using get/set methods.
+  The core Fluo API supports simple, cross-node 
transactional updates using get/set methods.
 
   
 
@@ -71,7 +71,7 @@ html_title_override: true
 
 
   Recipes API
-  The Fluo Recipes API builds on the core API to 
offer complex transactional updates.
+  The Fluo Recipes API builds on the core API to 
offer complex transactional updates.
 
   
 



incubator-fluo-website git commit: Jekyll build from gh-pages:281dafe

2016-10-27 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site 4bc3e65db -> 3bfa687c2


Jekyll build from gh-pages:281dafe

Mention that tx are cross node on front page


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/3bfa687c
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/3bfa687c
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/3bfa687c

Branch: refs/heads/asf-site
Commit: 3bfa687c238ac76bef4241c792bf39d4d37a03da
Parents: 4bc3e65
Author: Keith Turner 
Authored: Thu Oct 27 12:53:56 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 27 12:53:56 2016 -0400

--
 feed.xml   | 4 ++--
 index.html | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/3bfa687c/feed.xml
--
diff --git a/feed.xml b/feed.xml
index a833beb..d73baba 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Thu, 20 Oct 2016 18:36:12 +
-Thu, 20 Oct 2016 18:36:12 +
+Thu, 27 Oct 2016 16:53:48 +
+Thu, 27 Oct 2016 16:53:48 +
 Jekyll v3.2.1
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/3bfa687c/index.html
--
diff --git a/index.html b/index.html
index 98e9b88..832c5ec 100644
--- a/index.html
+++ b/index.html
@@ -158,7 +158,7 @@
 
 
   Core API
-  The core Fluo API supports 
simple transactional updates using get/set methods.
+  The core Fluo API supports 
simple, cross-node transactional updates using get/set methods.
 
   
 
@@ -173,7 +173,7 @@
 
 
   Recipes API
-  The Fluo Recipes API 
builds on the core API to offer complex transactional updates.
+  The Fluo Recipes API 
builds on the core API to offer complex transactional updates.
 
   
 



[2/2] incubator-fluo git commit: Merge branch 'fluo-762'

2016-10-25 Thread kturner
Merge branch 'fluo-762'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/389d0070
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/389d0070
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/389d0070

Branch: refs/heads/master
Commit: 389d00700628f5f3dce4658845896d5c366a33d3
Parents: d99a6e0 2bf94b1
Author: Keith Turner 
Authored: Tue Oct 25 18:18:23 2016 -0400
Committer: Keith Turner 
Committed: Tue Oct 25 18:18:23 2016 -0400

--
 .../apache/fluo/integration/impl/CollisionIT.java | 18 --
 1 file changed, 12 insertions(+), 6 deletions(-)
--




[1/2] incubator-fluo git commit: fixes #762 improve how test waits for propogation of oldest timestamp

2016-10-25 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master d99a6e0fa -> 389d00700


fixes #762 improve how test waits for propogation of oldest timestamp


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/2bf94b1d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/2bf94b1d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/2bf94b1d

Branch: refs/heads/master
Commit: 2bf94b1d4b9a69cb55acd49259aac68b0b210c7f
Parents: 1d243c3
Author: Keith Turner 
Authored: Tue Oct 25 17:27:44 2016 -0400
Committer: Keith Turner 
Committed: Tue Oct 25 17:27:44 2016 -0400

--
 .../apache/fluo/integration/impl/CollisionIT.java | 18 --
 1 file changed, 12 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/2bf94b1d/modules/integration/src/test/java/org/apache/fluo/integration/impl/CollisionIT.java
--
diff --git 
a/modules/integration/src/test/java/org/apache/fluo/integration/impl/CollisionIT.java
 
b/modules/integration/src/test/java/org/apache/fluo/integration/impl/CollisionIT.java
index 8639fbc..3af4fdc 100644
--- 
a/modules/integration/src/test/java/org/apache/fluo/integration/impl/CollisionIT.java
+++ 
b/modules/integration/src/test/java/org/apache/fluo/integration/impl/CollisionIT.java
@@ -42,7 +42,9 @@ import org.apache.fluo.core.util.UtilWaitThread;
 import org.apache.fluo.integration.ITBaseMini;
 import org.apache.fluo.integration.TestUtil;
 import org.junit.Assert;
+import org.junit.Rule;
 import org.junit.Test;
+import org.junit.rules.Timeout;
 
 /**
  * Run end to end test with lots of collisions and verify the following :
@@ -61,6 +63,9 @@ public class CollisionIT extends ITBaseMini {
   private static final Column STAT_CHANGED = new Column("stat", "changed");
   private static final Column STAT_PROCESSED = new Column("stat", "processed");
 
+  @Rule
+  public Timeout globalTimeout = Timeout.seconds(60);
+
   private static class NumLoader implements Loader {
 
 int num;
@@ -130,6 +135,8 @@ public class CollisionIT extends ITBaseMini {
 
 miniFluo.waitForObservers();
 
+long recentTS;
+
 try (Snapshot snapshot = client.newSnapshot()) {
 
   for (int i = 0; i < expectedCounts.length; i++) {
@@ -144,16 +151,15 @@ public class CollisionIT extends ITBaseMini {
   String allTotal = snapshot.gets("all", STAT_TOTAL);
   Assert.assertNotNull(allTotal);
   Assert.assertEquals(1000, Integer.parseInt(allTotal));
+
+  recentTS = snapshot.getStartTimestamp();
 }
 
 long oldestTS = ZookeeperUtil.getGcTimestamp(config.getAppZookeepers());
-while (true) {
+
+while (oldestTS < recentTS) {
   UtilWaitThread.sleep(300);
-  long tmp = ZookeeperUtil.getGcTimestamp(config.getAppZookeepers());
-  if (oldestTS == tmp) {
-break;
-  }
-  oldestTS = tmp;
+  oldestTS = ZookeeperUtil.getGcTimestamp(config.getAppZookeepers());
 }
 
 conn.tableOperations().compact(getCurTableName(), null, null, true, true);



[1/2] incubator-fluo git commit: fixes #791 give Oracle more time to stop in IT

2016-10-25 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master 1d243c312 -> d99a6e0fa


fixes #791 give Oracle more time to stop in IT


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/34d8944c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/34d8944c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/34d8944c

Branch: refs/heads/master
Commit: 34d8944c1ad4f93aa86ba74276e0f851c5a404d5
Parents: 2f9d3ee
Author: Keith Turner 
Authored: Mon Oct 24 17:44:31 2016 -0400
Committer: Keith Turner 
Committed: Tue Oct 25 17:33:49 2016 -0400

--
 .../java/org/apache/fluo/integration/impl/OracleIT.java  | 11 +++
 1 file changed, 7 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/34d8944c/modules/integration/src/test/java/org/apache/fluo/integration/impl/OracleIT.java
--
diff --git 
a/modules/integration/src/test/java/org/apache/fluo/integration/impl/OracleIT.java
 
b/modules/integration/src/test/java/org/apache/fluo/integration/impl/OracleIT.java
index 91636f7..e543c3c 100644
--- 
a/modules/integration/src/test/java/org/apache/fluo/integration/impl/OracleIT.java
+++ 
b/modules/integration/src/test/java/org/apache/fluo/integration/impl/OracleIT.java
@@ -36,7 +36,9 @@ import org.apache.fluo.integration.ITBaseImpl;
 import org.apache.log4j.Level;
 import org.apache.log4j.Logger;
 import org.apache.thrift.server.THsHaServer;
+import org.junit.Rule;
 import org.junit.Test;
+import org.junit.rules.Timeout;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNull;
@@ -44,6 +46,9 @@ import static org.junit.Assert.assertTrue;
 
 public class OracleIT extends ITBaseImpl {
 
+  @Rule
+  public Timeout globalTimeout = Timeout.seconds(60);
+
   @Test
   public void testRestart() throws Exception {
 OracleClient client = env.getSharedResources().getOracleClient();
@@ -225,10 +230,8 @@ public class OracleIT extends ITBaseImpl {
 oserver.stop();
 sleepWhileConnected(oserver);
 
-int count = 0;
-while (count < 5 && client.getOracle() != null) {
-  Thread.sleep(1000);
-  count++;
+while (client.getOracle() != null) {
+  Thread.sleep(100);
 }
 
 assertNull(client.getOracle());



[2/2] incubator-fluo git commit: Merge branch 'fluo-791'

2016-10-25 Thread kturner
Merge branch 'fluo-791'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/d99a6e0f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/d99a6e0f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/d99a6e0f

Branch: refs/heads/master
Commit: d99a6e0fa87599f34ca76c9e720af2ab7b8864b5
Parents: 1d243c3 34d8944
Author: Keith Turner 
Authored: Tue Oct 25 17:34:47 2016 -0400
Committer: Keith Turner 
Committed: Tue Oct 25 17:34:47 2016 -0400

--
 .../java/org/apache/fluo/integration/impl/OracleIT.java  | 11 +++
 1 file changed, 7 insertions(+), 4 deletions(-)
--




svn commit: r16655 - in /dev/incubator/fluo/fluo-recipes: ./ 1.0.0-incubating-rc1/

2016-10-24 Thread kturner
Author: kturner
Date: Mon Oct 24 16:17:36 2016
New Revision: 16655

Log:
Stage fluo-recipes-1.0.0-incubating (rc1) to svn dev area

Added:
dev/incubator/fluo/fluo-recipes/
dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/
dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/MD5SUM
dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/SHA1SUM

dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/fluo-recipes-1.0.0-incubating-source-release.tar.gz
   (with props)

dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/fluo-recipes-1.0.0-incubating-source-release.tar.gz.asc
   (with props)

Added: dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/MD5SUM
==
--- dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/MD5SUM (added)
+++ dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/MD5SUM Mon Oct 24 
16:17:36 2016
@@ -0,0 +1 @@
+13a716a26f6711eb4f99d98b67bc549e 
*fluo-recipes-1.0.0-incubating-source-release.tar.gz

Added: dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/SHA1SUM
==
--- dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/SHA1SUM (added)
+++ dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/SHA1SUM Mon Oct 24 
16:17:36 2016
@@ -0,0 +1 @@
+4bd77b5d74adfa77fbfaffa1f83ea932a56bf0db 
*fluo-recipes-1.0.0-incubating-source-release.tar.gz

Added: 
dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/fluo-recipes-1.0.0-incubating-source-release.tar.gz
==
Binary file - no diff available.

Propchange: 
dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/fluo-recipes-1.0.0-incubating-source-release.tar.gz
--
svn:mime-type = application/x-gzip

Added: 
dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/fluo-recipes-1.0.0-incubating-source-release.tar.gz.asc
==
Binary file - no diff available.

Propchange: 
dev/incubator/fluo/fluo-recipes/1.0.0-incubating-rc1/fluo-recipes-1.0.0-incubating-source-release.tar.gz.asc
--
svn:mime-type = application/pgp-signature




incubator-fluo-recipes git commit: [maven-release-plugin] prepare for next development iteration

2016-10-20 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/1.0.0-incubating-rc1-next [created] de7bee53d


[maven-release-plugin] prepare for next development iteration


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/de7bee53
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/de7bee53
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/de7bee53

Branch: refs/heads/1.0.0-incubating-rc1-next
Commit: de7bee53d725466c61d325f3bd73c4a9bf233f4f
Parents: 682eff9
Author: Keith Turner 
Authored: Thu Oct 20 18:16:50 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 20 18:16:50 2016 -0400

--
 modules/accumulo/pom.xml | 2 +-
 modules/core/pom.xml | 2 +-
 modules/kryo/pom.xml | 2 +-
 modules/spark/pom.xml| 2 +-
 modules/test/pom.xml | 2 +-
 pom.xml  | 4 ++--
 6 files changed, 7 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/accumulo/pom.xml
--
diff --git a/modules/accumulo/pom.xml b/modules/accumulo/pom.xml
index a344319..b4f183e 100644
--- a/modules/accumulo/pom.xml
+++ b/modules/accumulo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-accumulo

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/core/pom.xml
--
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index f1eb998..dc95ac6 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-core

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/kryo/pom.xml
--
diff --git a/modules/kryo/pom.xml b/modules/kryo/pom.xml
index 7f1725b..12baafd 100644
--- a/modules/kryo/pom.xml
+++ b/modules/kryo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-kryo

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/spark/pom.xml
--
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index b505896..12895a5 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-spark

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/modules/test/pom.xml
--
diff --git a/modules/test/pom.xml b/modules/test/pom.xml
index bdfb1b8..f495ac4 100644
--- a/modules/test/pom.xml
+++ b/modules/test/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating
+1.1.0-incubating-SNAPSHOT
 ../../pom.xml
   
   fluo-recipes-test

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/de7bee53/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 9188154..3332077 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
 1-incubating
   
   fluo-recipes
-  1.0.0-incubating
+  1.1.0-incubating-SNAPSHOT
   pom
   Apache Fluo (incubating) Recipes Parent
   Implementation of Common Fluo patterns
@@ -42,7 +42,7 @@
   
 
scm:git:https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
 
scm:git:https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
-rel/fluo-recipes-1.0.0-incubating
+HEAD
 
https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
   
   



[2/2] incubator-fluo-recipes git commit: Modified rc script and pom for generating release candidates

2016-10-20 Thread kturner
Modified rc script and pom for generating release candidates


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/5279878b
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/5279878b
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/5279878b

Branch: refs/heads/master
Commit: 5279878bc87d7f056824a87b9631eb4c417513d6
Parents: ba3c727
Author: Keith Turner 
Authored: Thu Oct 20 16:27:58 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 20 17:15:21 2016 -0400

--
 contrib/create-release-candidate.sh | 20 +---
 pom.xml | 14 ++
 2 files changed, 23 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/5279878b/contrib/create-release-candidate.sh
--
diff --git a/contrib/create-release-candidate.sh 
b/contrib/create-release-candidate.sh
index c79db19..0c22468 100755
--- a/contrib/create-release-candidate.sh
+++ b/contrib/create-release-candidate.sh
@@ -73,7 +73,7 @@ createEmail() {
 
   local branch; branch=$ver-rc$rc
   local commit; commit=$(gitCommit "$branch") || exit 1
-  local tag; tag=rel/fluo-$ver
+  local tag; tag=rel/fluo-recipes-$ver
   echo
   yellow  "IMPORTANT!! IMPORTANT!! IMPORTANT!! IMPORTANT!! IMPORTANT!! 
IMPORTANT!!"
   echo
@@ -83,7 +83,7 @@ createEmail() {
   echo
   echo"Remember, $(red DO NOT PUSH) the $(red "$tag") tag until after 
the vote"
   echo"passes and the tag is re-made with a gpg signature using:"
-  echo"  $(red "git tag -f -m 'Apache Fluo $ver' -s $tag 
${commit:0:7}")"
+  echo"  $(red "git tag -f -m 'Apache Fluo Recipes $ver' -s $tag 
${commit:0:7}")"
   echo
   yellow  "IMPORTANT!! IMPORTANT!! IMPORTANT!! IMPORTANT!! IMPORTANT!! 
IMPORTANT!!"
   echo
@@ -105,11 +105,11 @@ createEmail() {
 
   cat 

incubator-fluo-recipes git commit: [maven-release-plugin] prepare release rel/fluo-recipes-1.0.0-incubating

2016-10-20 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/1.0.0-incubating-rc1 [created] 682eff983


[maven-release-plugin] prepare release rel/fluo-recipes-1.0.0-incubating


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/682eff98
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/682eff98
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/682eff98

Branch: refs/heads/1.0.0-incubating-rc1
Commit: 682eff983f1fe6e60b75c36d3b2f782c6a93b155
Parents: e1d0aa7
Author: Keith Turner 
Authored: Thu Oct 20 18:16:40 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 20 18:16:40 2016 -0400

--
 modules/accumulo/pom.xml | 2 +-
 modules/core/pom.xml | 2 +-
 modules/kryo/pom.xml | 2 +-
 modules/spark/pom.xml| 2 +-
 modules/test/pom.xml | 2 +-
 pom.xml  | 4 ++--
 6 files changed, 7 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/682eff98/modules/accumulo/pom.xml
--
diff --git a/modules/accumulo/pom.xml b/modules/accumulo/pom.xml
index f7616fe..a344319 100644
--- a/modules/accumulo/pom.xml
+++ b/modules/accumulo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating-SNAPSHOT
+1.0.0-incubating
 ../../pom.xml
   
   fluo-recipes-accumulo

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/682eff98/modules/core/pom.xml
--
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 38db095..f1eb998 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating-SNAPSHOT
+1.0.0-incubating
 ../../pom.xml
   
   fluo-recipes-core

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/682eff98/modules/kryo/pom.xml
--
diff --git a/modules/kryo/pom.xml b/modules/kryo/pom.xml
index d187712..7f1725b 100644
--- a/modules/kryo/pom.xml
+++ b/modules/kryo/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating-SNAPSHOT
+1.0.0-incubating
 ../../pom.xml
   
   fluo-recipes-kryo

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/682eff98/modules/spark/pom.xml
--
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index 8675833..b505896 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating-SNAPSHOT
+1.0.0-incubating
 ../../pom.xml
   
   fluo-recipes-spark

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/682eff98/modules/test/pom.xml
--
diff --git a/modules/test/pom.xml b/modules/test/pom.xml
index 727048c..bdfb1b8 100644
--- a/modules/test/pom.xml
+++ b/modules/test/pom.xml
@@ -18,7 +18,7 @@
   
 org.apache.fluo
 fluo-recipes
-1.0.0-incubating-SNAPSHOT
+1.0.0-incubating
 ../../pom.xml
   
   fluo-recipes-test

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/682eff98/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 59845bc..9188154 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
 1-incubating
   
   fluo-recipes
-  1.0.0-incubating-SNAPSHOT
+  1.0.0-incubating
   pom
   Apache Fluo (incubating) Recipes Parent
   Implementation of Common Fluo patterns
@@ -42,7 +42,7 @@
   
 
scm:git:https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
 
scm:git:https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
-HEAD
+rel/fluo-recipes-1.0.0-incubating
 
https://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes.git
   
   



incubator-fluo-website git commit: Jekyll build from gh-pages:d196ec6

2016-10-20 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/asf-site aee89efe5 -> 4bc3e65db


Jekyll build from gh-pages:d196ec6

fixes #13 linked to Rya
fixes #5 mention all mailing list


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/4bc3e65d
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/4bc3e65d
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/4bc3e65d

Branch: refs/heads/asf-site
Commit: 4bc3e65dba5f27112759955daa5da1296dd0743e
Parents: aee89ef
Author: Keith Turner 
Authored: Thu Oct 20 14:36:17 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 20 14:36:17 2016 -0400

--
 feed.xml|  4 ++--
 getinvolved/index.html  | 34 ++
 related-projects/index.html |  8 +++-
 3 files changed, 39 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/4bc3e65d/feed.xml
--
diff --git a/feed.xml b/feed.xml
index d8534d6..a833beb 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 https://fluo.apache.org//
 https://fluo.apache.org//feed.xml; rel="self" 
type="application/rss+xml" />
-Tue, 18 Oct 2016 00:16:42 +
-Tue, 18 Oct 2016 00:16:42 +
+Thu, 20 Oct 2016 18:36:12 +
+Thu, 20 Oct 2016 18:36:12 +
 Jekyll v3.2.1
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/4bc3e65d/getinvolved/index.html
--
diff --git a/getinvolved/index.html b/getinvolved/index.html
index 3820c28..c297864 100644
--- a/getinvolved/index.html
+++ b/getinvolved/index.html
@@ -81,9 +81,35 @@
   
 Below are some ways that you can get involved with Apache Fluo:
 
-Mailing list
-
-Join our public mailing list by sending an email to dev-subscr...@fluo.incubator.apache.org. 
Discussions regarding issues and pull requests should remain on our GitHub 
pages (https://github.com/apache/fluo;>Fluo, https://github.com/apache/fluo-recipes;>Fluo Recipes, https://github.com/apache/incubator-fluo-website;>Fluo website). Our 
email list is for announcing releases, organizing meet ups, or any discussion 
that does not make sense for GitHub.
+Mailing lists
+
+The dev mailing list is for general 
disscussion, announcing releases, organizing meet ups, etc.  For
+discussion regarding specific issues or pull request consider using Github (https://github.com/apache/fluo;>Fluo, https://github.com/apache/fluo-recipes;>Fluo
+Recipes, https://github.com/apache/incubator-fluo-website;>Fluo 
website).  The notifications and 
commits mailing lists receive email from 
automated
+services and can be used to observe project activity.
+
+
+  
+
+  d...@fluo.apache.org
+  Subscribe
+  Unsubscribe
+  https://lists.apache.org/list.html?d...@fluo.apache.org;>Archive
+
+
+  notificati...@fluo.apache.org
+  Subscribe
+  Unsubscribe
+  https://lists.apache.org/list.html?notificati...@fluo.apache.org;>Archive
+
+
+  comm...@fluo.apache.org
+  Subscribe
+  Unsubscribe
+  https://lists.apache.org/list.html?comm...@fluo.apache.org;>Archive
+
+  
+
 
 IRC
 
@@ -95,7 +121,7 @@
 
 
   Creating an issue on our GitHub pages: https://github.com/apache/fluo/issues;>Fluo, https://github.com/apache/fluo-recipes/issues;>Fluo Recipes, https://github.com/apache/incubator-fluo-website/issues;>Fluo 
website
-  Sending an email to our mailing list at d...@fluo.incubator.apache.org
+  Sending an email to our mailing list at d...@fluo.apache.org
 
 
 Contributions

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/4bc3e65d/related-projects/index.html
--
diff --git a/related-projects/index.html b/related-projects/index.html
index 7a41bc7..e5411f5 100644
--- a/related-projects/index.html
+++ b/related-projects/index.html
@@ -80,10 +80,16 @@
 
   
 This page list external projects that build on Apache Fluo and may be 
useful.
-These projects are not affiliated with or endorsed by the 
+These projects are not necessarily affiliated with or endorsed by the 
 https://www.apache.org/;>Apache Software Foundation. If you would 
like to add a project to this 
 list, please open an issue or submit a pull request https://github.com/apache/incubator-fluo-website;>on Github.
 
+Projects Using Fluo
+
+
+  https://rya.apache.org;>Apache Rya - Uses Fluo to keep 
precomputed joins update to date as new data arrives.
+
+
 Tools for running Apache Fluo
 
 



incubator-fluo-website git commit: fixes #13 linked to Rya fixes #5 mention all mailing list

2016-10-20 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/gh-pages 3c7a60ffa -> d196ec689


fixes #13 linked to Rya
fixes #5 mention all mailing list


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/d196ec68
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/d196ec68
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/d196ec68

Branch: refs/heads/gh-pages
Commit: d196ec68967c4fba405bb4c1cb4ce9d7c44c00f8
Parents: 3c7a60f
Author: Keith Turner 
Authored: Wed Oct 19 18:42:27 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 20 14:32:58 2016 -0400

--
 pages/getinvolved.md  | 22 +++---
 pages/related-projects.md |  7 ++-
 2 files changed, 25 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/d196ec68/pages/getinvolved.md
--
diff --git a/pages/getinvolved.md b/pages/getinvolved.md
index d76864c..b7c4e15 100644
--- a/pages/getinvolved.md
+++ b/pages/getinvolved.md
@@ -6,9 +6,16 @@ permalink: /getinvolved/
 
 Below are some ways that you can get involved with Apache Fluo:
 
-### Mailing list
+### Mailing lists
 
-Join our public mailing list by sending an email to 
```dev-subscr...@fluo.incubator.apache.org```. Discussions regarding issues and 
pull requests should remain on our GitHub pages ([Fluo][f], [Fluo Recipes][r], 
[Fluo website][w]). Our email list is for announcing releases, organizing meet 
ups, or any discussion that does not make sense for GitHub. 
+The `dev` mailing list is for general disscussion, announcing releases, 
organizing meet ups, etc.  For
+discussion regarding specific issues or pull request consider using Github 
([Fluo][f], [Fluo
+Recipes][r], [Fluo website][w]).  The `notifications` and `commits` mailing 
lists receive email from automated
+services and can be used to observe project activity.
+
+d...@fluo.apache.org   | [Subscribe][dev-sub] | 
[Unsubscribe][dev-unsub]| [Archive][dev-arch]
+notificati...@fluo.apache.org | [Subscribe][ntfy-sub]| 
[Unsubscribe][ntfy-unsub]   | [Archive][ntfy-arch]
+comm...@fluo.apache.org   | [Subscribe][commits-sub] | 
[Unsubscribe][commits-unsub]| [Archive][commits-arch]
 
 ### IRC
 
@@ -19,7 +26,7 @@ Drop by and chat about Apache Fluo at [#fluo][fnf] on 
[freenode][fn].
 Users can provide feedback by:
 
 * Creating an issue on our GitHub pages: [Fluo][fi], [Fluo Recipes][ri], [Fluo 
website][wi] 
-* Sending an email to our mailing list at ```d...@fluo.incubator.apache.org```
+* Sending an email to our mailing list at ```d...@fluo.apache.org```
 
 ### Contributions 
 
@@ -35,3 +42,12 @@ Contributions are welcome to all Apache Fluo projects! All 
projects follow a [re
 [fn]: https://freenode.net/
 [htc]: /how-to-contribute/
 [rtc]: http://www.apache.org/foundation/glossary.html#ReviewThenCommit
+[dev-arch]: https://lists.apache.org/list.html?d...@fluo.apache.org
+[ntfy-arch]: https://lists.apache.org/list.html?notificati...@fluo.apache.org
+[commits-arch]: https://lists.apache.org/list.html?comm...@fluo.apache.org
+[dev-sub]: mailto:dev-subscr...@fluo.apache.org
+[dev-unsub]: mailto:dev-unsubscr...@fluo.apache.org
+[ntfy-sub]: mailto:notifications-subscr...@fluo.apache.org
+[ntfy-unsub]: mailto:notifications-unsubscr...@fluo.apache.org
+[commits-sub]: mailto:commits-subscr...@fluo.apache.org
+[commits-unsub]: mailto:commits-unsubscr...@fluo.apache.org

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/d196ec68/pages/related-projects.md
--
diff --git a/pages/related-projects.md b/pages/related-projects.md
index e123c82..2c4ff4e 100644
--- a/pages/related-projects.md
+++ b/pages/related-projects.md
@@ -5,10 +5,14 @@ permalink: /related-projects/
 ---
 
 This page list external projects that build on Apache Fluo and may be useful.
-These projects are not affiliated with or endorsed by the 
+These projects are not necessarily affiliated with or endorsed by the 
 [Apache Software Foundation][asf]. If you would like to add a project to this 
 list, please open an issue or submit a pull request [on Github][web-ghr].
 
+### Projects Using Fluo
+
+* [Apache Rya][Rya] - Uses Fluo to keep precomputed joins update to date as 
new data arrives.
+
 ### Tools for running Apache Fluo
 
 * [Uno] - Runs Apache Hadoop+Zookeeper+Accumulo+Fluo on a single machine for 
development and testing.
@@ -33,3 +37,4 @@ list, please open an issue or submit a pull request [on 
Github][web-ghr].
 [Phrasecount]: https://github.com/astralway/phrasecount
 [Jaccard]: https://github.com/keith-turner/jaccard
 

[1/2] incubator-fluo-recipes git commit: Correct naming in poms and NOTICE

2016-10-20 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master eab5787a1 -> 545cbcad8


Correct naming in poms and NOTICE


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/e989dfc3
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/e989dfc3
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/e989dfc3

Branch: refs/heads/master
Commit: e989dfc3826952657148037fead24f246c6878be
Parents: 10ccb16
Author: Keith Turner 
Authored: Wed Oct 19 16:15:46 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 20 13:33:32 2016 -0400

--
 DISCLAIMER   | 2 +-
 NOTICE   | 2 +-
 modules/accumulo/pom.xml | 2 +-
 modules/core/pom.xml | 2 +-
 modules/kryo/pom.xml | 2 +-
 modules/spark/pom.xml| 2 +-
 modules/test/pom.xml | 2 +-
 pom.xml  | 2 +-
 8 files changed, 8 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/e989dfc3/DISCLAIMER
--
diff --git a/DISCLAIMER b/DISCLAIMER
index 4fc1ce6..57973b2 100644
--- a/DISCLAIMER
+++ b/DISCLAIMER
@@ -1,4 +1,4 @@
-Apache Fluo is an effort undergoing incubation at The Apache Software
+Apache Fluo (incubating) Recipes is an effort undergoing incubation at The 
Apache Software
 Foundation (ASF), sponsored by Apache Incubator.
  
 Incubation is required of all newly accepted projects until a further review

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/e989dfc3/NOTICE
--
diff --git a/NOTICE b/NOTICE
index dab393a..43fad13 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,4 +1,4 @@
-Apache Fluo
+Apache Fluo (incubating) Recipes
 Copyright 2016 The Apache Software Foundation.
 
 This product includes software developed at

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/e989dfc3/modules/accumulo/pom.xml
--
diff --git a/modules/accumulo/pom.xml b/modules/accumulo/pom.xml
index 751fbee..f7616fe 100644
--- a/modules/accumulo/pom.xml
+++ b/modules/accumulo/pom.xml
@@ -22,7 +22,7 @@
 ../../pom.xml
   
   fluo-recipes-accumulo
-  Fluo Recipes Accumulo
+  Apache Fluo (incubating) Recipes for Apache Accumulo
   
 
   commons-configuration

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/e989dfc3/modules/core/pom.xml
--
diff --git a/modules/core/pom.xml b/modules/core/pom.xml
index 720d5f0..38db095 100644
--- a/modules/core/pom.xml
+++ b/modules/core/pom.xml
@@ -22,7 +22,7 @@
 ../../pom.xml
   
   fluo-recipes-core
-  Fluo Recipes Core
+  Apache Fluo (incubating) Recipes Core
   
 
   com.google.guava

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/e989dfc3/modules/kryo/pom.xml
--
diff --git a/modules/kryo/pom.xml b/modules/kryo/pom.xml
index eaed2ee..d187712 100644
--- a/modules/kryo/pom.xml
+++ b/modules/kryo/pom.xml
@@ -22,7 +22,7 @@
 ../../pom.xml
   
   fluo-recipes-kryo
-  Fluo Recipes Kryo
+  Apache Fluo (incubating) Recipes using Kryo
   
 
   com.esotericsoftware

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/e989dfc3/modules/spark/pom.xml
--
diff --git a/modules/spark/pom.xml b/modules/spark/pom.xml
index 5cb80a4..8675833 100644
--- a/modules/spark/pom.xml
+++ b/modules/spark/pom.xml
@@ -22,7 +22,7 @@
 ../../pom.xml
   
   fluo-recipes-spark
-  Fluo Recipes Spark
+  Apache Fluo (incubating) Recipes for Apache Spark
   
 
   commons-configuration

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/e989dfc3/modules/test/pom.xml
--
diff --git a/modules/test/pom.xml b/modules/test/pom.xml
index 86f5fbd..727048c 100644
--- a/modules/test/pom.xml
+++ b/modules/test/pom.xml
@@ -22,7 +22,7 @@
 ../../pom.xml
   
   fluo-recipes-test
-  Fluo Recipes Test
+  Apache Fluo (incubating) Recipes for Testing
   
 
   com.google.guava

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/e989dfc3/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 5be0541..2579ff6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
   fluo-recipes
   1.0.0-incubating-SNAPSHOT
   pom
-  Fluo Recipes Parent
+  Apache Fluo (incubating) Recipes Parent
   Implementation of Common Fluo 

[2/2] incubator-fluo-recipes git commit: Merge branch 'name-fix'

2016-10-20 Thread kturner
Merge branch 'name-fix'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/545cbcad
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/545cbcad
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/545cbcad

Branch: refs/heads/master
Commit: 545cbcad832a0f10042c4277cb46d63c4211c071
Parents: eab5787 e989dfc
Author: Keith Turner 
Authored: Thu Oct 20 13:34:01 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 20 13:34:01 2016 -0400

--
 DISCLAIMER   | 2 +-
 NOTICE   | 2 +-
 modules/accumulo/pom.xml | 2 +-
 modules/core/pom.xml | 2 +-
 modules/kryo/pom.xml | 2 +-
 modules/spark/pom.xml| 2 +-
 modules/test/pom.xml | 2 +-
 pom.xml  | 2 +-
 8 files changed, 8 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/545cbcad/pom.xml
--



incubator-fluo-recipes git commit: Document thrift dep in pom

2016-10-19 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master 10ccb16ae -> eab5787a1


Document thrift dep in pom


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/eab5787a
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/eab5787a
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/eab5787a

Branch: refs/heads/master
Commit: eab5787a104d0cf93f3069a42b2b196bdf4da6a0
Parents: 10ccb16
Author: Keith Turner 
Authored: Tue Oct 18 13:41:17 2016 -0400
Committer: Keith Turner 
Committed: Wed Oct 19 19:02:05 2016 -0400

--
 pom.xml | 6 ++
 1 file changed, 6 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/eab5787a/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 5be0541..b382051 100644
--- a/pom.xml
+++ b/pom.xml
@@ -58,6 +58,12 @@
 1.8
 1.8
 1.5.2
+
 0.9.1
 3.4.8
   



[2/2] incubator-fluo-recipes git commit: Misc release prep cleanup

2016-10-17 Thread kturner
Misc release prep cleanup


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/10ccb16a
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/10ccb16a
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/10ccb16a

Branch: refs/heads/master
Commit: 10ccb16aedd8c141f5bd21be6822481471afa7ad
Parents: 573aeb7
Author: Keith Turner 
Authored: Fri Oct 14 17:04:59 2016 -0400
Committer: Keith Turner 
Committed: Fri Oct 14 17:43:06 2016 -0400

--
 README.md   |  16 +
 docs/accumulo-export-queue.md   |  16 +
 docs/cfm.md |  16 +
 docs/export-queue.md|  16 +
 docs/recording-tx.md|  16 +
 docs/row-hasher.md  |  16 +
 docs/serialization.md   |  16 +
 docs/table-optimization.md  |  16 +
 docs/testing.md |  16 +
 docs/transient.md   |  16 +
 modules/accumulo/pom.xml|   2 +-
 modules/core/pom.xml|   2 +-
 .../recipes/core/common/TableOptimizations.java |   2 +-
 .../fluo/recipes/core/export/ExportBucket.java  |  14 +-
 .../fluo/recipes/core/impl/BucketUtil.java  |  31 --
 .../fluo/recipes/core/map/CollisionFreeMap.java |  22 +-
 .../recipes/core/export/DocumentLoader.java |  35 --
 .../recipes/core/export/DocumentObserver.java   |  63 
 .../recipes/core/export/ExportBufferIT.java | 106 --
 .../fluo/recipes/core/export/ExportQueueIT.java | 114 --
 .../recipes/core/export/ExportTestBase.java | 271 --
 .../recipes/core/export/GsonSerializer.java |  42 ---
 .../fluo/recipes/core/export/OptionsTest.java   |   1 +
 .../fluo/recipes/core/export/RefInfo.java   |  26 --
 .../fluo/recipes/core/export/RefUpdates.java|  43 ---
 .../recipes/core/export/it/DocumentLoader.java  |  35 ++
 .../core/export/it/DocumentObserver.java|  64 
 .../recipes/core/export/it/ExportBufferIT.java  | 107 ++
 .../recipes/core/export/it/ExportQueueIT.java   | 114 ++
 .../recipes/core/export/it/ExportTestBase.java  | 274 ++
 .../recipes/core/export/it/GsonSerializer.java  |  42 +++
 .../fluo/recipes/core/export/it/RefInfo.java|  26 ++
 .../fluo/recipes/core/export/it/RefUpdates.java |  43 +++
 .../fluo/recipes/core/map/BigUpdateIT.java  | 208 ---
 .../recipes/core/map/CollisionFreeMapIT.java| 352 --
 .../fluo/recipes/core/map/DocumentLoader.java   |  35 --
 .../fluo/recipes/core/map/DocumentObserver.java |  89 -
 .../fluo/recipes/core/map/SplitsTest.java   |   1 +
 .../fluo/recipes/core/map/TestSerializer.java   |  45 ---
 .../recipes/core/map/WordCountCombiner.java |  36 --
 .../recipes/core/map/WordCountObserver.java |  47 ---
 .../fluo/recipes/core/map/it/BigUpdateIT.java   | 212 +++
 .../recipes/core/map/it/CollisionFreeMapIT.java | 353 +++
 .../recipes/core/map/it/DocumentLoader.java |  35 ++
 .../recipes/core/map/it/DocumentObserver.java   |  90 +
 .../recipes/core/map/it/TestSerializer.java |  45 +++
 .../recipes/core/map/it/WordCountCombiner.java  |  38 ++
 .../recipes/core/map/it/WordCountObserver.java  |  49 +++
 modules/kryo/pom.xml|   2 +-
 .../recipes/kryo/KryoSimplerSerializer.java |   2 +-
 .../serialization/KryoSimpleSerializerTest.java |  45 ---
 .../recipes/kryo/KryoSimpleSerializerTest.java  |  46 +++
 modules/spark/pom.xml   |   2 +-
 .../fluo/recipes/spark/FluoSparkHelperIT.java   |  82 -
 .../recipes/spark/it/FluoSparkHelperIT.java |  84 +
 modules/test/pom.xml|   2 +-
 .../fluo/recipes/test/AccumuloExportITBase.java |   1 -
 pom.xml |  38 +-
 58 files changed, 1856 insertions(+), 1722 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/10ccb16a/README.md
--
diff --git a/README.md b/README.md
index b592204..e5d3a5a 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,19 @@
+
 # Apache Fluo Recipes
 
 [![Build Status][ti]][tl] [![Apache License][li]][ll]

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/10ccb16a/docs/accumulo-export-queue.md
--
diff --git a/docs/accumulo-export-queue.md b/docs/accumulo-export-queue.md
index b880d58..8b4bf39 100644
--- a/docs/accumulo-export-queue.md
+++ b/docs/accumulo-export-queue.md

svn commit: r16561 - /release/incubator/fluo/KEYS

2016-10-17 Thread kturner
Author: kturner
Date: Mon Oct 17 14:34:48 2016
New Revision: 16561

Log:
Added key for Keith Turner

Modified:
release/incubator/fluo/KEYS

Modified: release/incubator/fluo/KEYS
==
--- release/incubator/fluo/KEYS (original)
+++ release/incubator/fluo/KEYS Mon Oct 17 14:34:48 2016
@@ -74,3 +74,60 @@ u41KYUOairzb0SLD/QyGgBHbOBEnXOC2OWM6Erdr
 cVX01+E7tnKRPcAZoqDYsNwR3LsZYqmZBZsRmyUItk3E+HAJ71RblN4iDTx+m3oX
 =7A6P
 -END PGP PUBLIC KEY BLOCK-
+
+pub   4096R/352ACF76 2011-11-02
+uid  Richard Keith Turner (CODE SIGNING KEY) <ke...@deenlo.com>
+sub   4096R/F299A8F3 2011-11-02
+
+-BEGIN PGP PUBLIC KEY BLOCK-
+Version: GnuPG v2.0.22 (GNU/Linux)
+
+mQINBE6xlWgBEADFjZNXWrbMZ8e/kbhuVZnDoYF1EEQ1ffRqSDiLYHXLQiOGGjdg
+GtehYsFr0HmSvqtWTC44DlIQihpnM/y3XOCKy4qV8MPZsFhAK+b2PSIZCrQWSMpm
+T5I7RhMf74Fu6QgZYQnbGoWoalUN7X5Ru8hP4O4OlJ4hb1/IakDyFTwQ7zI716Kc
+N0r+uqguGyEaeKd2+g3fNWQrjouuWeFYcfALFhQOutyVgphrA7x17aD8B7ytIDQ2
+aea9DmE+FyVhUe7zzukwNe9tnDDbHzowuHEmNFgPPP9ETK9kGtlZNkfyCp93QBs5
+o0ftqFMZwTE18U5XNNmcKSD9uxFuDrOxR+eoaC4LwJlc6yunsIBDPLyGorJKjkDH
+syITpI7da972QZKLWPrjqiwPNpePb6LrbeMMXbgVTDfvR3OunTZd4rmvHRq8o5aA
+gPosWXqhVmRGx8A4+YYK2ke/DWmk2gYj1h0nlO5Bh/nt+/dbCnI3o6pob7AiTrgz
+O0uzWWCpKRt89ny6N4uOvdoMoxez0JDHsqd4jMB9lmkt6VOwHndRKkqI+E2kI1vI
+FYM0B4c22mQBBnaWJfVwfLi/ubWY5b95+adjQAG0roL1EQ4SYUtWXGKN3Tvr4DpV
+9lx1azsztV+e1cn2pe1nH+LL8vU5WHDVObV4giIAoSOA0HCfwhrVRwOfwwARAQAB
+tDpSaWNoYXJkIEtlaXRoIFR1cm5lciAoQ09ERSBTSUdOSU5HIEtFWSkgPGtlaXRo
+QGRlZW5sby5jb20+iQI3BBMBAgAhAhsDAh4BAheABQJOsZbABQsJCAcDBRUKCQgL
+BRYCAwEAAAoJEJqs+1Y1Ks92mdIQAKX2EyhnCX7bD7xjeAArOJAAKgw5hP8xopMB
+BOMGZz4eHk8gH++lm25AU9EAXj7rcraF1b/VAQMpj2I/1MkWRkJv0d0Tyo+lx64j
+9o/soQEzt0RGKmStGshQHZ6DMYDeVTqHs/c8T+sJTnWxsR0TNU2ZOibNhPmS+RtP
+3Z6u9eKVbl9LGDTIvts57F0tN7qxBh6ENp3UYtWYKESFQRzNRdSVDqFMrBowu5uC
+dVyXQsQDnalbwO7Jdzv4nFE/zzRi6x0RIlukD+kfQI4KrdHoamQwmAzIn/GZOuxd
+tk7r4F/GMM1RqEML5/SWq0eLItALksTHOtt/b7eK0TVqNxVhmYGsKvi+corw7+W6
+hkoSnSuNLOzn1CMFweiQu1j7HthuAl6nY6ndJQRINAy+vBg4LEH1rngWF81imLTg
+xUJL/qJmLHTitc0TYblqDL6wWWmam2FqqouNvJU36MIl6iwpwCaFozZngW/so1ni
+UWwu5mmfXJ1f6F6qImspoR03wAcBjgxJsP1Otnw2BrcH1xOuOVq5s9XUZxgLIcdf
+8FV4jJN/QgNOuwVMsio9jvvmONpNVG5CvoFhnUBXWC28b42B/4/uOe8HiBzeVJp/
+smWH/ID9TTYG/uSwD3VU2XiCt2fF1qftyqmcvUIeZgo25bFVUwb3OzQzrgpk+l4Z
+wlw3jLhQuQINBE6xlWgBEADDB6vzGL28p3ZxHxSdTT8n/G4dPh1ez9FGhU451hYa
+s2pOTMn1uTNCb14DVMEBnMd5pupWqTAO+gBnowCAI+8tMYLNlXS8eR8gogq4HNMa
+sQ/vKHjgXDqPRXaQVKA5eL2yEAhHd/Ucv2OJ4KM7W9DJcQWRaHS7+mYS7Q1uwXHD
+SW0DQL1Qp1KKI50ERIJqcfxCTg1bnjSVFatCbGnsYRNwd1n4ANwvLCEK5/xyL2J7
+fadCnGf1PVEfnERawxvKZ6M1F/o8WOVgCuxA9nK4Ta5EzYyZjRrdAUWop8I8KvfR
+BEQ4UWrNxw86imnkNJ0gj4oViXz8mgplbthO3R4GEHwA8Q7NwZtEONU6hFc6QkMe
+r5X/oWPDVEYD3SVTTCgepTKpfDervrBD76E36WoVZZYGvRbhrj6R1uyZ3PXZDy4H
++In3Ul1vFyUpanw+yB+0DRS50JwwgvN+mq7N06l15hPYIHUYmos0WhvCcFWhp3Hc
+pG+bMpdpJThceEXcqLzsLZHA2M9k+15TfNhhvlxHb6tWHATyq5/LnzyfOTz6mXr+
+9LKTQwBdcmhvIchqApy49eqUuvTbzXCshgcsxyvtJ61ouvcslrIM5wpIZH1htfXz
+4rY0D4GUs85247rEKKjVCT9F1XM/EoBgXKhaYz2P5pnXzUPsYJFkbacx4VI18oM+
+nwARAQABiQIfBBgBAgAJBQJOsZVoAhsMAAoJEJqs+1Y1Ks92XuMQAIjAwIDQaGn9
+M592eFIFkMk6lnhQq5vsnTAhClpsaIWoih2lJBf0AsT634JFTX5fdf2Heg5ze5uu
+RuloKCCrg/DCope4CYhrJmjV4S399quWQsoayNae3p2yhzRtGC4j7DRDGQlnYifq
+0viqgaF6fZz17uiWemiy9o5bDULkcacBQWNoqlep5YPXKYE5s61YMfYwyM0aaFCE
+djoZs1KWk017eBnNOOaTzlL8d7QfecWPASLPYvxjkqNtvLnV/SAZ5RMwN1ji3WU1
+SufRdcYlBFgIi4KNUERiO0GRDW1QgEP3XLcQsFkQouF8YYfPeKjRmBzUhiJpw3kG
+ljKdSwIYaO4Yw4ybUup7nfL2PGtM6Gc8pqsPPEXLW5M8ZcZd3xvGFwRSA5j7QLqp
+2THvQZgw9ihTHcpWutxnJRj6lnawDfBoG+vs3IkAlrBnMUAuZLAWNO8KamcGxUvb
+RRd5IOLsttehhRi2lOdcOozHO0VI++8YoYx0uCHfSN3ZjZ8vhq9nWrPZcTSIUt0M
+f2mw/rDzNLXGdhN8KxeyD4Mnf73R8qwdcufzirc6dWf7OzKmhHzEuFMlZdS4/5Dy
+VANGObiCqmZlM3HzeW+sa0MFhhP7xuR0DP2WD1rOjKltauWfDem7R1+3Y7LZPI12
+/wi/NckKSy8bozMEId0/IN1PfmDCqYoh
+=RrrE
+-END PGP PUBLIC KEY BLOCK-




incubator-fluo-recipes git commit: Avoid allocating collection in AccumuloExporter

2016-10-13 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master 42176d1ec -> 573aeb788


Avoid allocating collection in AccumuloExporter


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/573aeb78
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/573aeb78
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/573aeb78

Branch: refs/heads/master
Commit: 573aeb788a0b4623f10b7afd8b0363b501e31776
Parents: 42176d1
Author: Keith Turner 
Authored: Wed Oct 12 15:26:47 2016 -0400
Committer: Keith Turner 
Committed: Thu Oct 13 16:59:32 2016 -0400

--
 docs/accumulo-export-queue.md   |  4 +--
 .../accumulo/export/AccumuloExporter.java   | 24 +++-
 .../accumulo/export/AccumuloReplicator.java | 12 
 .../accumulo/export/AccumuloExportTest.java | 29 +---
 .../recipes/test/export/SimpleExporter.java |  7 ++---
 5 files changed, 47 insertions(+), 29 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/573aeb78/docs/accumulo-export-queue.md
--
diff --git a/docs/accumulo-export-queue.md b/docs/accumulo-export-queue.md
index 33a1c97..b880d58 100644
--- a/docs/accumulo-export-queue.md
+++ b/docs/accumulo-export-queue.md
@@ -24,10 +24,10 @@ Exporting to Accumulo is easy. Follow the steps below:
 public class SimpleExporter extends AccumuloExporter {
 
   @Override
-  protected Collection translate(SequencedExport 
export) {
+  protected void translate(SequencedExport export, 
Consumer consumer) {
 Mutation m = new Mutation(export.getKey());
 m.put("cf", "cq", export.getSequence(), export.getValue());
-return Collections.singleton(m);
+consumer.accept(m);
   }
 }
 ```

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/573aeb78/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
--
diff --git 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
index 4cb0730..6a19362 100644
--- 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
+++ 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/AccumuloExporter.java
@@ -16,10 +16,10 @@
 package org.apache.fluo.recipes.accumulo.export;
 
 import java.util.ArrayList;
-import java.util.Collection;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
+import java.util.function.Consumer;
 
 import org.apache.accumulo.core.data.Mutation;
 import org.apache.fluo.api.config.SimpleConfiguration;
@@ -68,9 +68,11 @@ public abstract class AccumuloExporter extends 
Exporter {
 
 ArrayList buffer = new ArrayList<>();
 
+Consumer consumer = m -> buffer.add(m);
+
 while (exports.hasNext()) {
   SequencedExport export = exports.next();
-  buffer.addAll(translate(export));
+  translate(export, consumer);
 }
 
 if (buffer.size() > 0) {
@@ -78,7 +80,14 @@ public abstract class AccumuloExporter extends 
Exporter {
 }
   }
 
-  protected abstract Collection translate(SequencedExport 
export);
+  /**
+   * Implementations of this method should translate the given SequencedExport 
to 0 or more
+   * Mutations.
+   * 
+   * @param export the input that should be translated to mutations
+   * @param consumer output mutations to this consumer
+   */
+  protected abstract void translate(SequencedExport export, 
Consumer consumer);
 
   /**
* Generates Accumulo mutations by comparing the differences between a 
RowColumn/Bytes map that is
@@ -95,12 +104,13 @@ public abstract class AccumuloExporter extends 
Exporter {
* The export sequence number is used for the timestamp in the mutation.
* 
*
+   * @param consumer generated mutations will be output to this consumer
* @param oldData Map containing old row/column data
* @param newData Map containing new row/column data
* @param seq Export sequence number
*/
-  public static Collection generateMutations(long seq, 
Map oldData,
-  Map newData) {
+  public static void generateMutations(long seq, Map oldData,
+  Map newData, Consumer consumer) {
 Map mutationMap = new HashMap<>();
 for (Map.Entry

[4/4] incubator-fluo-website git commit: Jekyll build from gh-pages: b359233

2016-10-10 Thread kturner
Jekyll build from gh-pages: b359233


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/76022205
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/76022205
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/76022205

Branch: refs/heads/asf-site
Commit: 7602220587409909755994b4c46217db489160dd
Parents: bf8cc83
Author: Keith Turner 
Authored: Mon Oct 10 19:33:45 2016 -0400
Committer: Keith Turner 
Committed: Mon Oct 10 19:33:45 2016 -0400

--
 docs/index.html   |   4 +-
 feed.xml  |   4 +-
 index.html|   2 +-
 resources/tour/RowLocking.png | Bin 0 -> 59627 bytes
 tour/application-configuration/index.html | 295 +
 tour/architecture/index.html  | 141 +++
 tour/basic-read-write/index.html  | 175 
 tour/collision-code/index.html| 176 
 tour/collisions/index.html| 154 +++
 tour/data-model/index.html| 170 
 tour/data-pojos/index.html| 151 +++
 tour/exercise-1/index.html| 545 +
 tour/index.html   |  95 -
 tour/loader-executer/index.html   | 154 +++
 tour/mem-self-ntfy-code/index.html| 252 
 tour/mem-self-ntfy/index.html | 159 
 tour/multi-get/index.html | 272 
 tour/observer_example/index.html  | 217 ++
 tour/observers/index.html | 163 
 tour/recipes/index.html   | 137 +++
 tour/row-locking/index.html   | 237 +++
 tour/scanning-code/index.html | 210 ++
 tour/scanning/index.html  | 171 
 tour/snapshot-isolation-code/index.html   | 175 
 tour/snapshot-isolation/index.html| 156 +++
 tour/tx-logging/index.html| 178 
 tour/weak-code/index.html | 210 ++
 tour/weak-notifications/index.html| 165 
 tour/write-skew-code/index.html   | 179 
 tour/write-skew/index.html| 168 
 tour/writing-code/index.html  | 158 +++
 31 files changed, 5266 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/76022205/docs/index.html
--
diff --git a/docs/index.html b/docs/index.html
index 024f37c..a2df0e8 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -77,7 +77,9 @@
   
 
   
-https://github.com/apache/fluo;>Apache Fluo and https://github.com/apache/fluo-recipes;>Apache Fluo Recipes have 
seperate documentation as they are different repositories with their own 
release cycle.
+For a general overview of Fluo, take the Fluo 
tour.
+
+https://github.com/apache/fluo;>Apache Fluo and https://github.com/apache/fluo-recipes;>Apache Fluo Recipes have 
seperate documentation as they are different repositories with their own 
release cycle.
 
 Apache Fluo
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/76022205/feed.xml
--
diff --git a/feed.xml b/feed.xml
index 1fba9c8..fdca567 100644
--- a/feed.xml
+++ b/feed.xml
@@ -5,8 +5,8 @@
 
 http://fluo.io/
 http://fluo.io/feed.xml; rel="self" 
type="application/rss+xml" />
-Fri, 05 Aug 2016 16:09:58 -0400
-Fri, 05 Aug 2016 16:09:58 -0400
+Mon, 10 Oct 2016 19:23:58 -0400
+Mon, 10 Oct 2016 19:23:58 -0400
 Jekyll v3.1.6
 
   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/76022205/index.html
--
diff --git a/index.html b/index.html
index 0a00fc8..9788166 100644
--- a/index.html
+++ b/index.html
@@ -78,7 +78,7 @@
   
   Overview
   Apache Fluo (incubating) is an open source implementation of https://research.google.com/pubs/pub36726.html; 
target="_blank">Percolator 
- (which populates Google's search index) for https://accumulo.apache.org/; target="_blank">Apache Accumulo. Fluo 
makes it possible to update the results of a large-scale computation, index, or 
analytic as new data is discovered.
+ (which populates Google's search index) for https://accumulo.apache.org/; target="_blank">Apache Accumulo. Fluo 
makes it possible to update the results of a large-scale computation, index, or 
analytic as new data is discovered. For more information, take the Fluo tour.
 
 
   


[2/4] incubator-fluo-website git commit: Jekyll build from gh-pages: b359233

2016-10-10 Thread kturner
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/76022205/tour/multi-get/index.html
--
diff --git a/tour/multi-get/index.html b/tour/multi-get/index.html
new file mode 100644
index 000..3032974
--- /dev/null
+++ b/tour/multi-get/index.html
@@ -0,0 +1,272 @@
+
+
+  
+
+
+
+
+https://fonts.googleapis.com/css?family=Montserrat:700,400;>
+https://fonts.googleapis.com/css?family=Merriweather;>
+https://maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css;
 >
+http://fluo.io/tour/multi-get/;>
+
+Fetching multiple cells | Apache Fluo
+
+  
+  
+
+  
+
+  
+
+  
+  
+  
+
+  
+  
+
+
+  
+Documentation
+Download
+
+  Community
+  
+Get Involved
+Blog
+People
+Related Projects
+Powered By
+  
+
+
+  Contributing
+  
+How To Contribute
+Release Process
+  
+
+  
+  
+
+  Apache Software Foundation
+  
+https://www.apache.org;>Apache Homepage
+https://www.apache.org/licenses/LICENSE-2.0;>License
+https://www.apache.org/foundation/sponsorship;>Sponsorship
+https://www.apache.org/security;>Security
+https://www.apache.org/foundation/thanks;>Thanks
+https://www.apache.org/foundation/policies/conduct;>Code of 
Conduct
+  
+
+  
+
+  
+
+
+  
+  
+  
+
+
+
+  Fluo Tour: Fetching multiple cells
+  Tour page 15 of 26
+
+
+  Each call to get a row column results in a RPC to an Accumulo server.  In 
the cases where there are
+many row columns to get, Fluo provides more specialized get methods that make 
less RPC calls.
+
+Below is some example code that illustrates using these methods and shows 
the performance
+difference.  The example code performs the following task.
+
+
+  In a single transaction, generates 100 rows each with 100 columns such 
that each row has the same
+columns.  Uses integers for the row and columns names.
+  Gets 100 columns from a single row in the following ways.  Times each 
way.
+
+  In a loop calls  gets(CharSequence,
 Column).
+  Calls gets(CharSequence,
 SetColumn) once
+
+  
+  Gets 100 columns from 3 rows in the following ways.  Times each way.
+
+  For three rows, loops over 100 columns calling  gets(CharSequence,
 Column)
+  Calls gets(Collection?
 extends CharSequence, SetColumn) once
+
+  
+  Generates 100 row column pairs, where each pair is a random row and a 
random column. Gets each
+  pair in the following ways.  Times each way.
+
+  For each pair calls gets(CharSequence,
 Column)
+  Calls gets(CollectionRowColumn)
 once
+
+  
+
+
+Below is the code to perform the task mentioned above.
+
+  
private static void excercise(MiniFluo mini, FluoClient 
client) {
+
+SetColumn columns = new 
LinkedHashSet();
+
+for(int c = 0; c  100; c++) {
+  columns.add(new Column("f", String.format("q%04d", c)));
+}
+
+try(Transaction tx = 
client.newTransaction()) {
+  int value = 0;
+  for(int r = 0; r  100; r++) {
+String row = String.format("r%04d", r);
+for (Column column : 
columns) {
+  tx.set(row, column, value+"");
+  value++;
+}
+  }
+
+  tx.commit();
+}
+
+//fetch multiple columns from a single row
+try(Snapshot snap = 
client.newSnapshot()) {
+  String row = String.format("r%04d", 42);
+
+  long t1 = System.currentTimeMillis();
+
+  for (Column column : 
columns) {
+snap.gets(row, column);
+  }
+
+  long t2 = System.currentTimeMillis();
+
+  snap.gets(row, columns);
+
+  long t3 = System.currentTimeMillis();
+
+  System.out.printf("test1 time 
1:%d  time2:%d\n",(t2-t1),(t3-t2));
+}
+
+
+//fetch the same columns from multiple rows
+try(Snapshot snap = 
client.newSnapshot()) {
+  ListString rows 
= Arrays.asList(String.format("r%04d", 42),
+String.format("r%04d", 21),
+String.format("r%04d", 84));
+
+  long t1 = System.currentTimeMillis();
+
+  for (String row : 
rows) {
+for (Column column : 
columns) {
+  snap.gets(row, column);
+}
+  }
+
+  long t2 = System.currentTimeMillis();
+
+  snap.gets(rows, columns);
+
+  long t3 = System.currentTimeMillis();
+
+  System.out.printf("test2 time 
1:%d  time2:%d\n",(t2-t1),(t3-t2));
+}
+
+

[1/5] incubator-fluo-website git commit: initial start on Fluo Tour

2016-10-10 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/gh-pages c20b58b08 -> b3592332b


initial start on Fluo Tour

added snapshot isolation pages


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/9b36d6fa
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/9b36d6fa
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/9b36d6fa

Branch: refs/heads/gh-pages
Commit: 9b36d6fa39c55a0ce2027bfec2f1e9b72e5a1645
Parents: c20b58b
Author: Keith Turner 
Authored: Tue Jul 26 15:54:17 2016 -0400
Committer: Keith Turner 
Committed: Wed Sep 28 18:08:06 2016 -0400

--
 tour/pg0-intro.md   |  6 +
 tour/pg1-data-model.md  | 25 +++
 tour/pg2-architechture.md   |  4 
 tour/pg3-writing-code.md|  9 +++
 tour/pg4-basic-read-write.md| 41 
 tour/pg5-snapshot-isolation.md  | 20 
 tour/pg6-snapshot-isolation-code.md | 40 +++
 7 files changed, 145 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/9b36d6fa/tour/pg0-intro.md
--
diff --git a/tour/pg0-intro.md b/tour/pg0-intro.md
new file mode 100644
index 000..4cbbe84
--- /dev/null
+++ b/tour/pg0-intro.md
@@ -0,0 +1,6 @@
+Fluo Tour
+-
+
+This tour provides a sequence of pages that introduce Fluo concepts with
+associated coding excercies.  If you have any questions along the way, please
+ask questions in IRC or on the dev list TODO link.   

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/9b36d6fa/tour/pg1-data-model.md
--
diff --git a/tour/pg1-data-model.md b/tour/pg1-data-model.md
new file mode 100644
index 000..0785caf
--- /dev/null
+++ b/tour/pg1-data-model.md
@@ -0,0 +1,25 @@
+Fluo Data Model
+---
+
+Fluo uses Accumulo's data model which is based on the BigTable data model.
+This data model supports a large online sorted map that spans multiple nodes in
+a cluster.   The keys in this map have four components : row, column family,
+column qualifier, and column visibility.
+
+ * **Row** : This portion of the key is used to partition data across nodes in
+   a cluster.  All data in a row is guaranteed to be stored on single node in
+   the cluster.  Different rows may be stored on different nodes.  Fluo
+   supports cross row transactions, which mean cross node transactions.
+ * **Column family** :  This portion of the key is used to partition data
+   within each node on the cluster.  The data model has locality groups which
+   store column families in physically separate partitions on each node.  If
+   locality groups are configured, then it allows scanning a subset of rows 
column
+   families much more quickly. 
+ * **Column Qualifier** : This portion of the key is used to define arbitrary
+   columns with a column family.
+ * **Column Visibility** : In Accumulo this portion of the key is used to
+   control access to data.
+
+This data model is schema-less, there is no need to predefine columns.  One
+thing thats defined in the Accumulo data modes thats not available in Fluo is
+timestamps.  When using Fluo the timestamp portion of the key is not available.

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/9b36d6fa/tour/pg2-architechture.md
--
diff --git a/tour/pg2-architechture.md b/tour/pg2-architechture.md
new file mode 100644
index 000..dac8e9d
--- /dev/null
+++ b/tour/pg2-architechture.md
@@ -0,0 +1,4 @@
+Fluo Architechture
+--
+
+TODO picture

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/9b36d6fa/tour/pg3-writing-code.md
--
diff --git a/tour/pg3-writing-code.md b/tour/pg3-writing-code.md
new file mode 100644
index 000..f0b8ddb
--- /dev/null
+++ b/tour/pg3-writing-code.md
@@ -0,0 +1,9 @@
+Writing and Running Fluo Code
+-
+
+Following the Fluo tour will require writing code that uses Fluo's API.  In
+order to enable you to get quickly started writing Fluo code we have provided a
+git repository with a basic skeleton. Before continuing with the tour, please
+read about the [Fluo Tour git repository][1] and set it up locally.
+
+[1]:https://github.com/keith-turner/fluo-tour

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/9b36d6fa/tour/pg4-basic-read-write.md

[2/5] incubator-fluo-website git commit: Updated design of Fluo tour

2016-10-10 Thread kturner
Updated design of Fluo tour

* Created template for Fluo tour pages that enables paging
* Updated current tour pages to use template
* Created tour index
* Referenced tour from homepage and documentation


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/b8786f31
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/b8786f31
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/b8786f31

Branch: refs/heads/gh-pages
Commit: b8786f3170564680eff870fab82ec71fe13dc233
Parents: 9b36d6f
Author: Mike Walch 
Authored: Wed Jul 27 12:34:40 2016 -0400
Committer: Keith Turner 
Committed: Wed Sep 28 18:10:34 2016 -0400

--
 _config.yml  |  9 
 _layouts/tour.html   | 25 ++
 docs/index.md|  3 ++-
 index.html   |  2 +-
 tour/architecture.md |  7 +++
 tour/basic-read-write.md | 44 +++
 tour/data-model.md   | 28 +
 tour/index.md| 13 
 tour/pg1-data-model.md   | 25 --
 tour/pg2-architechture.md|  4 
 tour/pg3-writing-code.md |  9 
 tour/pg4-basic-read-write.md | 41 
 tour/writing-code.md | 12 +++
 13 files changed, 141 insertions(+), 81 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/b8786f31/_config.yml
--
diff --git a/_config.yml b/_config.yml
index 4028241..148eca9 100644
--- a/_config.yml
+++ b/_config.yml
@@ -35,6 +35,12 @@ defaults:
   layout: "release-summary"
   category: "release-summaries"
   permalink: "/:categories/:title/"
+  - 
+scope:
+  path: "tour"
+  type: "pages"
+values:
+  layout: "tour"
 
 # Number of posts displayed on the home page.
 num_home_posts: 5
@@ -48,6 +54,9 @@ latest_fluo_release_date: "January 12, 2016"
 latest_recipes_release: "1.0.0-beta-2"
 latest_recipes_release_date: "March 29, 2016"
 
+# Fluo tour settings
+tour_pages: 4
+
 whitelist: [jekyll-redirect-from]
 gems: [jekyll-redirect-from]
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/b8786f31/_layouts/tour.html
--
diff --git a/_layouts/tour.html b/_layouts/tour.html
new file mode 100644
index 000..061e0fe
--- /dev/null
+++ b/_layouts/tour.html
@@ -0,0 +1,25 @@
+---
+layout: default
+---
+
+  Fluo Tour: {{ page.title }}
+  Tour page {{ page.tour_num }} of {{ site.tour_pages 
}}
+
+
+  {{ content }}
+
+
+
+  {% assign prev = page.tour_num | minus: 1 %}
+  {% assign next = page.tour_num | plus: 1 %}
+   
+{% if prev > 0 %}
+ 
+{% endif %}
+
+{{ page.tour_num }} / {{ site.tour_pages }} 
+{% if next <= site.tour_pages %}
+ 
+{% endif %}
+  
+

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/b8786f31/docs/index.md
--
diff --git a/docs/index.md b/docs/index.md
index 3017ef1..5d2de88 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -3,6 +3,8 @@ layout: page
 title: Documentation
 ---
 
+For a general overview of Fluo, take the [Fluo tour](/tour/).
+
 [Apache Fluo] and [Apache Fluo Recipes] have seperate documentation as they 
are different repositories with their own release cycle.
 
 ## Apache Fluo
@@ -19,4 +21,3 @@ Documentation about releases made before Apache Fluo entered 
incubation at Apach
 
 [Apache Fluo]: https://github.com/apache/fluo
 [Apache Fluo Recipes]: https://github.com/apache/fluo-recipes
-

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/b8786f31/index.html
--
diff --git a/index.html b/index.html
index 9688cb4..f8e8ae4 100644
--- a/index.html
+++ b/index.html
@@ -10,7 +10,7 @@ html_title_override: true
   
   Overview
   Apache Fluo (incubating) is an open source implementation of https://research.google.com/pubs/pub36726.html; 
target="_blank">Percolator 
- (which populates Google's search index) for https://accumulo.apache.org/; target="_blank">Apache Accumulo. Fluo 
makes it possible to update the results of a large-scale computation, index, or 
analytic as new data is discovered.
+ (which populates Google's search index) for https://accumulo.apache.org/; target="_blank">Apache Accumulo. Fluo 
makes it possible to update the results of a large-scale computation, index, or 
analytic as new data is discovered. For more information, take the Fluo tour.
 
 
   

incubator-fluo-website git commit: added more imports needed by tour

2016-09-27 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/fluo-tour 729a523d4 -> b09ad4946


added more imports needed by tour


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/b09ad494
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/b09ad494
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/b09ad494

Branch: refs/heads/fluo-tour
Commit: b09ad494625c9fc9ac35dbaec2ca492e7353c917
Parents: 729a523
Author: Keith Turner 
Authored: Mon Sep 26 16:13:59 2016 -0400
Committer: Keith Turner 
Committed: Mon Sep 26 16:13:59 2016 -0400

--
 src/main/java/ft/Main.java | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/b09ad494/src/main/java/ft/Main.java
--
diff --git a/src/main/java/ft/Main.java b/src/main/java/ft/Main.java
index 8925911..9b0a7a2 100644
--- a/src/main/java/ft/Main.java
+++ b/src/main/java/ft/Main.java
@@ -1,11 +1,14 @@
 package ft;
 
+//Normally using * with imports is a bad practice, however in this case it 
makes experimenting with
+//Fluo easier.
+
 import java.nio.file.Files;
 import java.nio.file.Paths;
+import java.util.*;
 
-// Normally using * with imports is a bad practice, however in this case it 
makes experimenting with
-// Fluo easier.
 import org.apache.fluo.api.client.*;
+import org.apache.fluo.api.client.scanner.*;
 import org.apache.fluo.api.config.*;
 import org.apache.fluo.api.data.*;
 import org.apache.fluo.api.mini.MiniFluo;



incubator-fluo git commit: closes #779 added fluo version command

2016-09-23 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master f316e88ac -> 882299d77


closes #779 added fluo version command


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/882299d7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/882299d7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/882299d7

Branch: refs/heads/master
Commit: 882299d77329fa1a9c4ff8c0276c9f5495998811
Parents: f316e88
Author: Keith Turner 
Authored: Fri Sep 23 13:57:13 2016 -0400
Committer: Keith Turner 
Committed: Fri Sep 23 14:46:27 2016 -0400

--
 modules/distribution/src/main/assembly/bin.xml |  8 
 modules/distribution/src/main/scripts/fluo |  4 
 .../distribution/src/main/scripts/impl/config.sh   |  1 +
 .../src/main/scripts/impl/fluo-version.sh  | 17 +
 4 files changed, 30 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/882299d7/modules/distribution/src/main/assembly/bin.xml
--
diff --git a/modules/distribution/src/main/assembly/bin.xml 
b/modules/distribution/src/main/assembly/bin.xml
index e2b8bd1..c745003 100644
--- a/modules/distribution/src/main/assembly/bin.xml
+++ b/modules/distribution/src/main/assembly/bin.xml
@@ -49,6 +49,9 @@
   
 */**
   
+  
+src/main/scripts/impl/fluo-version.sh
+  
 
 
   src/main/config
@@ -91,5 +94,10 @@
   conf/examples
   true
 
+
+  src/main/scripts/impl/fluo-version.sh
+  bin/impl
+  true
+
   
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/882299d7/modules/distribution/src/main/scripts/fluo
--
diff --git a/modules/distribution/src/main/scripts/fluo 
b/modules/distribution/src/main/scripts/fluo
index 3f91f75..8b08369 100755
--- a/modules/distribution/src/main/scripts/fluo
+++ b/modules/distribution/src/main/scripts/fluo
@@ -61,6 +61,7 @@ function print_usage {
   echo "  scan Prints snapshot of data in Fluo application"
   echo "  classpath Prints the classpath setup in fluo-env.sh"
   echo "  wait Waits until all notifications are processed"
+  echo "  version   Prints the version of Fluo"
   echo "  exec{}";
   echo " "
   exit 1
@@ -147,6 +148,9 @@ exec)
   export CLASSPATH="$APP_LIB_DIR/*:$CLASSPATH"
   java org.apache.fluo.cluster.command.FluoCommand $FLUO_HOME $HADOOP_PREFIX 
"$@"
   ;;
+version)
+  echo "$FLUO_VERSION"
+  ;;
 *)
   print_usage
 esac

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/882299d7/modules/distribution/src/main/scripts/impl/config.sh
--
diff --git a/modules/distribution/src/main/scripts/impl/config.sh 
b/modules/distribution/src/main/scripts/impl/config.sh
index 7abbbe5..4b46085 100755
--- a/modules/distribution/src/main/scripts/impl/config.sh
+++ b/modules/distribution/src/main/scripts/impl/config.sh
@@ -64,3 +64,4 @@ else
   export SED="sed -i"
 fi
 
+. $impl/fluo-version.sh

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/882299d7/modules/distribution/src/main/scripts/impl/fluo-version.sh
--
diff --git a/modules/distribution/src/main/scripts/impl/fluo-version.sh 
b/modules/distribution/src/main/scripts/impl/fluo-version.sh
new file mode 100644
index 000..30dd115
--- /dev/null
+++ b/modules/distribution/src/main/scripts/impl/fluo-version.sh
@@ -0,0 +1,17 @@
+#! /usr/bin/env bash
+
+# Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+# agreements. See the NOTICE file distributed with this work for additional 
information regarding
+# copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+# "License"); you may not use this file except in compliance with the License. 
You may obtain a
+# copy of the License at
+#
+#http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software 
distributed under the License
+# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+# or implied. See the License for the specific language governing permissions 
and limitations under
+# the License.
+
+# Maven should set correct Fluo version below at build time
+FLUO_VERSION=${project.version}



incubator-fluo-recipes git commit: Added standard way to setup per exporter configuration.

2016-09-22 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master 6f5177363 -> dc765718c


Added standard way to setup per exporter configuration.


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/dc765718
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/dc765718
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/dc765718

Branch: refs/heads/master
Commit: dc765718c59104a1643cbaa0ae81d565ae5e4146
Parents: 6f51773
Author: Keith Turner 
Authored: Wed Sep 21 18:02:23 2016 -0400
Committer: Keith Turner 
Committed: Thu Sep 22 12:24:18 2016 -0400

--
 docs/accumulo-export-queue.md   |  24 +-
 .../accumulo/export/AccumuloExportQueue.java| 278 ---
 .../accumulo/export/AccumuloExporter.java   |  84 +-
 .../accumulo/export/AccumuloReplicator.java |   2 +-
 .../recipes/accumulo/export/AccumuloWriter.java | 169 +++
 .../accumulo/export/AccumuloExportTest.java |   2 +-
 .../recipes/core/export/ExportObserver.java |  19 +-
 .../fluo/recipes/core/export/ExportQueue.java   |  32 +++
 .../fluo/recipes/core/export/Exporter.java  |  13 +-
 .../fluo/recipes/core/export/OptionsTest.java   |  12 +-
 .../recipes/test/export/AccumuloExporterIT.java |  12 +-
 .../test/export/AccumuloReplicatorIT.java   |  13 +-
 .../recipes/test/export/SimpleExporter.java |   2 +-
 13 files changed, 347 insertions(+), 315 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/dc765718/docs/accumulo-export-queue.md
--
diff --git a/docs/accumulo-export-queue.md b/docs/accumulo-export-queue.md
index dde04fb..33a1c97 100644
--- a/docs/accumulo-export-queue.md
+++ b/docs/accumulo-export-queue.md
@@ -3,8 +3,8 @@
 ## Background
 
 The [Export Queue Recipe][1] provides a generic foundation for building export 
mechanism to any
-external data store. The [AccumuloExportQueue] provides an implementation of 
this recipe for
-Accumulo. The [AccumuloExportQueue] is located the 'fluo-recipes-accumulo' 
module and provides the
+external data store. The [AccumuloExporter] provides an implementation of this 
recipe for
+Accumulo. The [AccumuloExporter] is located the `fluo-recipes-accumulo` module 
and provides the
 following functionality:
 
  * Safely batches writes to Accumulo made by multiple transactions exporting 
data.
@@ -24,7 +24,7 @@ Exporting to Accumulo is easy. Follow the steps below:
 public class SimpleExporter extends AccumuloExporter {
 
   @Override
-  protected Collection processExport(SequencedExport export) {
+  protected Collection translate(SequencedExport 
export) {
 Mutation m = new Mutation(export.getKey());
 m.put("cf", "cq", export.getSequence(), export.getValue());
 return Collections.singleton(m);
@@ -32,7 +32,7 @@ Exporting to Accumulo is easy. Follow the steps below:
 }
 ```
 
-2. With a `SimpleExporter` created, configure a [AccumuloExportQueue] to use 
`SimpleExporter` and
+2. With a `SimpleExporter` created, configure an `ExportQueue` to use 
`SimpleExporter` and
give it information on how to connect to Accumulo. 
 
 ```java
@@ -46,10 +46,17 @@ Exporting to Accumulo is easy. Follow the steps below:
 String password =   // Accumulo user password
 String exportTable =// Name of table to export to
 
-// Configure accumulo export queue
-AccumuloExportQueue.configure(fluoConfig, new 
ExportQueue.Options(EXPORT_QUEUE_ID,
-SimpleExporter.class.getName(), String.class.getName(), 
String.class.getName(), numMapBuckets),
-new AccumuloExportQueue.Options(instance, zookeepers, user, password, 
exportTable));
+
+// Create config for export table.
+AccumuloExporter.Configuration exportTableCfg =
+new AccumuloExporter.Configuration(instance, zookeepers, user, 
password, exportTable);
+
+// Create config for export queue.
+ExportQueue.Options eqOpts = new ExportQueue.Options(EXPORT_QUEUE_ID, 
SimpleExporter.class,
+String.class, String.class, 
numMapBuckets).setExporterConfiguration(exportTableCfg);
+
+// Configure export queue.  This will modify fluoConfig.
+ExportQueue.configure(fluoConfig, qeOpts);
 
 // Initialize Fluo using fluoConfig
 ```
@@ -83,7 +90,6 @@ Exporting to Accumulo is easy. Follow the steps below:
 [AccumuloReplicator] is a specialized [AccumuloExporter] that replicates a 
Fluo table to Accumulo.
 
 [1]: export-queue.md
-[AccumuloExportQueue]: 

incubator-fluo-website git commit: turned quickstart into fluo tour

2016-09-21 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/fluo-tour 7dabafa65 -> 729a523d4


turned quickstart into fluo tour


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/729a523d
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/729a523d
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/729a523d

Branch: refs/heads/fluo-tour
Commit: 729a523d483476b7641d9bae09106ae9501d38a6
Parents: 7dabafa
Author: Keith Turner 
Authored: Tue Sep 20 15:31:59 2016 -0400
Committer: Keith Turner 
Committed: Wed Sep 21 13:32:58 2016 -0400

--
 .gitignore  |  6 +++
 README.md   | 13 ++
 pom.xml | 77 
 src/main/java/ft/Main.java  | 44 ++
 src/main/resources/log4j.properties | 29 
 5 files changed, 169 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/729a523d/.gitignore
--
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000..93eea5d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,6 @@
+.classpath
+.project
+.settings
+target
+.idea
+*.iml

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/729a523d/README.md
--
diff --git a/README.md b/README.md
index 56db76e..b463c11 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,17 @@
 Fluo Tour
 -
 
+This git repository provides a barebones Maven+Java environment for the [Fluo 
Tour][tour].  As you
+go through the tour edit [Main.java] and use the following command to get all 
of the correct
+dependencies on the classpath and execute Main.
+
+```bash
+mvn -q clean compile exec:java
+```
+
+The command takes a bit to run because it starts a MiniAccumulo and MiniFluo
+each time.
+
+[tour]: https://fluo.apache.org/tour
+[Main.java]: src/main/java/ft/Main.java
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/729a523d/pom.xml
--
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 000..855b2e1
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,77 @@
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
+  4.0.0
+
+  org.apache.fluo
+  fluo-tour
+  0.0.1-SNAPSHOT
+  jar
+
+  fluo-tour
+  https://fluo.apache.org/tour
+
+  
+UTF-8
+1.7.2
+1.0.0-incubating
+  
+
+  
+
+  
+maven-compiler-plugin
+3.1
+
+  1.8
+  1.8
+  true
+  UTF-8
+
+  
+  
+org.codehaus.mojo
+exec-maven-plugin
+1.5.0
+
+  ft.Main
+  false
+
+  
+
+  
+
+  
+
+  
+org.apache.accumulo
+accumulo-minicluster
+${accumulo.version}
+  
+  
+org.apache.accumulo
+accumulo-core
+${accumulo.version}
+  
+
+  
+
+  
+
+  org.apache.fluo
+  fluo-api
+  ${fluo.version}
+
+
+  org.apache.fluo
+  fluo-core
+  ${fluo.version}
+  runtime
+
+
+  org.apache.fluo
+  fluo-mini
+  ${fluo.version}
+  runtime
+
+  
+

http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/729a523d/src/main/java/ft/Main.java
--
diff --git a/src/main/java/ft/Main.java b/src/main/java/ft/Main.java
new file mode 100644
index 000..8925911
--- /dev/null
+++ b/src/main/java/ft/Main.java
@@ -0,0 +1,44 @@
+package ft;
+
+import java.nio.file.Files;
+import java.nio.file.Paths;
+
+// Normally using * with imports is a bad practice, however in this case it 
makes experimenting with
+// Fluo easier.
+import org.apache.fluo.api.client.*;
+import org.apache.fluo.api.config.*;
+import org.apache.fluo.api.data.*;
+import org.apache.fluo.api.mini.MiniFluo;
+import org.apache.fluo.api.observer.*;
+
+public class Main {
+  public static void main(String[] args) throws Exception {
+
+String tmpDir = Files.createTempDirectory(Paths.get("target"), 
"mini").toString();
+// System.out.println("tmp dir : "+tmpDir);
+
+FluoConfiguration fluoConfig = new FluoConfiguration();
+fluoConfig.setApplicationName("class");
+fluoConfig.setMiniDataDir(tmpDir);
+
+preInit(fluoConfig);
+
+System.out.print("Starting MiniFluo ... ");
+
+try (MiniFluo mini = FluoFactory.newMiniFluo(fluoConfig);
+

incubator-fluo-website git commit: initial commit

2016-09-20 Thread kturner
Repository: incubator-fluo-website
Updated Branches:
  refs/heads/fluo-tour [created] 7dabafa65


initial commit


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/commit/7dabafa6
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/tree/7dabafa6
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/diff/7dabafa6

Branch: refs/heads/fluo-tour
Commit: 7dabafa651713e55760bb237b3cd72f82cfaa833
Parents: 
Author: Keith Turner 
Authored: Tue Sep 20 14:40:01 2016 -0400
Committer: Keith Turner 
Committed: Tue Sep 20 14:40:01 2016 -0400

--
 README.md | 4 
 1 file changed, 4 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-website/blob/7dabafa6/README.md
--
diff --git a/README.md b/README.md
new file mode 100644
index 000..56db76e
--- /dev/null
+++ b/README.md
@@ -0,0 +1,4 @@
+Fluo Tour
+-
+
+



incubator-fluo-recipes git commit: updates for Fluo API changes

2016-09-19 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master b79c6fb89 -> d7347ee15


updates for Fluo API changes


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/d7347ee1
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/d7347ee1
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/d7347ee1

Branch: refs/heads/master
Commit: d7347ee1abcc01881d04af1b375eca4018a3
Parents: b79c6fb
Author: Keith Turner 
Authored: Fri Sep 16 18:03:14 2016 -0400
Committer: Keith Turner 
Committed: Fri Sep 16 18:03:14 2016 -0400

--
 .../recipes/core/export/ExportObserver.java |  2 +-
 .../fluo/recipes/core/export/ExportQueue.java   |  6 +-
 .../fluo/recipes/core/map/CollisionFreeMap.java |  6 +-
 .../core/map/CollisionFreeMapObserver.java  |  2 +-
 .../transaction/RecordingTransactionBase.java   | 65 +---
 .../recipes/core/types/TypedSnapshotBase.java   |  3 +-
 .../recipes/core/export/ExportTestBase.java |  4 +-
 .../recipes/core/map/CollisionFreeMapIT.java|  4 +-
 .../recipes/core/types/MockSnapshotBase.java| 26 +---
 .../recipes/core/types/MockTransactionBase.java |  9 +--
 10 files changed, 23 insertions(+), 104 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/d7347ee1/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportObserver.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportObserver.java
 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportObserver.java
index 2c41313..b3070e0 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportObserver.java
+++ 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportObserver.java
@@ -83,7 +83,7 @@ public class ExportObserver extends AbstractObserver {
   @SuppressWarnings("unchecked")
   @Override
   public void init(Context context) throws Exception {
-queueId = context.getParameters().get("queueId");
+queueId = context.getObserverConfiguration().getString("queueId");
 ExportQueue.Options opts = new ExportQueue.Options(queueId, 
context.getAppConfiguration());
 
 // TODO defer loading classes... so that not done during fluo init

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/d7347ee1/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportQueue.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportQueue.java
 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportQueue.java
index e53e17c..81d277b 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportQueue.java
+++ 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportQueue.java
@@ -27,7 +27,7 @@ import com.google.common.base.Preconditions;
 import com.google.common.hash.Hashing;
 import org.apache.fluo.api.client.TransactionBase;
 import org.apache.fluo.api.config.FluoConfiguration;
-import org.apache.fluo.api.config.ObserverConfiguration;
+import org.apache.fluo.api.config.ObserverSpecification;
 import org.apache.fluo.api.config.SimpleConfiguration;
 import org.apache.fluo.api.data.Bytes;
 import org.apache.fluo.recipes.core.common.TableOptimizations;
@@ -105,8 +105,8 @@ public class ExportQueue {
 SimpleConfiguration appConfig = fluoConfig.getAppConfiguration();
 opts.save(appConfig);
 
-fluoConfig.addObserver(new 
ObserverConfiguration(ExportObserver.class.getName())
-.setParameters(Collections.singletonMap("queueId", opts.queueId)));
+fluoConfig.addObserver(new 
ObserverSpecification(ExportObserver.class.getName(), Collections
+.singletonMap("queueId", opts.queueId)));
 
 Bytes exportRangeStart = Bytes.of(opts.queueId + RANGE_BEGIN);
 Bytes exportRangeStop = Bytes.of(opts.queueId + RANGE_END);

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/d7347ee1/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
index 8747c87..6e74c3c 100644
--- 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
+++ 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java
@@ -36,7 +36,7 @@ import com.google.common.hash.Hashing;
 

incubator-fluo git commit: removed default methods from interfaces #770 #771 #772

2016-09-16 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master 0373ec549 -> 49b3abb64


removed default methods from interfaces #770 #771 #772


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/49b3abb6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/49b3abb6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/49b3abb6

Branch: refs/heads/master
Commit: 49b3abb64e463f8a6265dbe1d2ce48068fbea8fe
Parents: 0373ec5
Author: Keith Turner 
Authored: Fri Sep 16 16:22:50 2016 -0400
Committer: Keith Turner 
Committed: Fri Sep 16 16:22:50 2016 -0400

--
 .../fluo/api/client/AbstractSnapshotBase.java   | 102 +
 .../api/client/AbstractTransactionBase.java |  41 
 .../apache/fluo/api/client/SnapshotBase.java|  71 +--
 .../apache/fluo/api/client/TransactionBase.java |  13 +-
 .../api/client/AbstractTransactionBaseTest.java | 210 +++
 .../client/TestDefaultTransactionMethods.java   | 210 ---
 .../apache/fluo/core/impl/TransactionImpl.java  |   3 +-
 .../fluo/core/log/TracingTransaction.java   |   4 +-
 .../fluo/integration/TestTransaction.java   |   3 +-
 9 files changed, 375 insertions(+), 282 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/49b3abb6/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
--
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
 
b/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
new file mode 100644
index 000..30b325a
--- /dev/null
+++ 
b/modules/api/src/main/java/org/apache/fluo/api/client/AbstractSnapshotBase.java
@@ -0,0 +1,102 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+
+package org.apache.fluo.api.client;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import com.google.common.collect.Collections2;
+import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Maps;
+import org.apache.fluo.api.data.Bytes;
+import org.apache.fluo.api.data.Column;
+import org.apache.fluo.api.data.RowColumn;
+
+/**
+ * This class provides default implementations for many of the classes in 
SnapshotBase. It exists to
+ * make implementing SnapshotBase easier.
+ */
+
+public abstract class AbstractSnapshotBase implements SnapshotBase {
+
+  public Bytes get(Bytes row, Column column, Bytes defaultValue) {
+Bytes ret = get(row, column);
+if (ret == null) {
+  return defaultValue;
+}
+
+return ret;
+  }
+
+  public Map get(Bytes row, Column... columns) {
+return get(row, ImmutableSet.copyOf(columns));
+  }
+
+  public Map> get(Collection rows, Column... 
columns) {
+return get(rows, ImmutableSet.copyOf(columns));
+  }
+
+  public Map gets(Collection rowColumns) {
+Map bytesMap = get(rowColumns);
+return Maps.transformValues(bytesMap, b -> b.toString());
+  }
+
+  public Map> gets(Collection rows,
+  Set columns) {
+Map> rcvs =
+get(Collections2.transform(rows, s -> Bytes.of(s)), columns);
+Map> ret = new HashMap<>(rcvs.size());
+
+for (Entry> entry : rcvs.entrySet()) {
+  ret.put(entry.getKey().toString(), 
Maps.transformValues(entry.getValue(), b -> b.toString()));
+}
+return ret;
+  }
+
+  public Map> gets(Collection rows,
+  Column... columns) {
+return gets(rows, ImmutableSet.copyOf(columns));
+  }
+
+  public String gets(CharSequence row, Column column) {
+Bytes val = get(Bytes.of(row), column);
+if (val == null) {
+  return null;
+}
+return val.toString();
+  }
+
+  public String 

[5/6] incubator-fluo git commit: closes #768 made observer & app cfg consistent

2016-09-16 Thread kturner
closes #768 made observer & app cfg consistent


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/556df6db
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/556df6db
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/556df6db

Branch: refs/heads/master
Commit: 556df6dbbe5460caa1372e6962301b3415e88eef
Parents: 2b1c456
Author: Keith Turner 
Authored: Thu Sep 15 18:13:17 2016 -0400
Committer: Keith Turner 
Committed: Thu Sep 15 18:13:17 2016 -0400

--
 .../fluo/api/config/FluoConfiguration.java  | 28 +++---
 .../fluo/api/config/ObserverConfiguration.java  | 78 -
 .../fluo/api/config/ObserverSpecification.java  | 90 
 .../fluo/api/config/SimpleConfiguration.java| 28 ++
 .../org/apache/fluo/api/observer/Observer.java  |  6 +-
 .../fluo/api/config/FluoConfigurationTest.java  | 37 
 .../apache/fluo/core/client/FluoAdminImpl.java  | 30 +++
 .../org/apache/fluo/core/client/Operations.java | 20 ++---
 .../org/apache/fluo/core/impl/Environment.java  | 20 ++---
 .../fluo/core/worker/ObserverContext.java   | 16 ++--
 .../org/apache/fluo/core/worker/Observers.java  |  6 +-
 .../org/apache/fluo/integration/ITBase.java |  4 +-
 .../fluo/integration/impl/AppConfigIT.java  |  6 +-
 .../fluo/integration/impl/CollisionIT.java  |  6 +-
 .../apache/fluo/integration/impl/FailureIT.java |  8 +-
 .../apache/fluo/integration/impl/FluoIT.java|  6 +-
 .../fluo/integration/impl/NotificationGcIT.java |  6 +-
 .../fluo/integration/impl/ObserverConfigIT.java | 33 +++
 .../integration/impl/SelfNotificationIT.java|  6 +-
 .../integration/impl/StrongNotificationIT.java  |  6 +-
 .../integration/impl/WeakNotificationIT.java|  6 +-
 .../impl/WeakNotificationOverlapIT.java |  6 +-
 .../apache/fluo/integration/impl/WorkerIT.java  |  6 +-
 .../org/apache/fluo/integration/log/LogIT.java  |  8 +-
 24 files changed, 254 insertions(+), 212 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/556df6db/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java
--
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java 
b/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java
index 562221d..801a025 100644
--- 
a/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java
+++ 
b/modules/api/src/main/java/org/apache/fluo/api/config/FluoConfiguration.java
@@ -113,6 +113,10 @@ public class FluoConfiguration extends SimpleConfiguration 
{
 super(propertiesFile);
   }
 
+  public FluoConfiguration(Map map) {
+super(map);
+  }
+
   public void validate() {
 // keep in alphabetical order
 getAccumuloClasspath();
@@ -126,7 +130,7 @@ public class FluoConfiguration extends SimpleConfiguration {
 getClientRetryTimeout();
 getLoaderQueueSize();
 getLoaderThreads();
-getObserverConfig();
+getObserverSpecifications();
 getTransactionRollbackTime();
 getWorkerThreads();
 getZookeeperTimeout();
@@ -275,9 +279,9 @@ public class FluoConfiguration extends SimpleConfiguration {
 return getPositiveInt(WORKER_NUM_THREADS_PROP, WORKER_NUM_THREADS_DEFAULT);
   }
 
-  public List getObserverConfig() {
+  public List getObserverSpecifications() {
 
-List configList = new ArrayList<>();
+List configList = new ArrayList<>();
 Iterator iter = getKeys();
 
 while (iter.hasNext()) {
@@ -298,7 +302,6 @@ public class FluoConfiguration extends SimpleConfiguration {
 if (className.isEmpty()) {
   throw new IllegalArgumentException(key + " has empty class name: " + 
className);
 }
-ObserverConfiguration observerConfig = new 
ObserverConfiguration(className);
 
 Map params = new HashMap<>();
 for (int i = 1; i < fields.length; i++) {
@@ -313,8 +316,9 @@ public class FluoConfiguration extends SimpleConfiguration {
   }
   params.put(kv[0], kv[1]);
 }
-observerConfig.setParameters(params);
-configList.add(observerConfig);
+
+ObserverSpecification observerSpecification = new 
ObserverSpecification(className, params);
+configList.add(observerSpecification);
   }
 }
 return configList;
@@ -338,8 +342,8 @@ public class FluoConfiguration extends SimpleConfiguration {
 return max + 1;
   }
 
-  private void addObserver(ObserverConfiguration oconf, int next) {
-Map params = oconf.getParameters();
+  private void addObserver(ObserverSpecification oconf, int next) {
+Map params = 

[6/6] incubator-fluo git commit: Merge remote-tracking branch 'origin/fluo-770'

2016-09-16 Thread kturner
Merge remote-tracking branch 'origin/fluo-770'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/0373ec54
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/0373ec54
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/0373ec54

Branch: refs/heads/master
Commit: 0373ec549cfe7fbce7e5bea554194e69fead9617
Parents: 556df6d b8a69cf
Author: Keith Turner 
Authored: Fri Sep 16 14:24:56 2016 -0400
Committer: Keith Turner 
Committed: Fri Sep 16 14:24:56 2016 -0400

--
 .../apache/fluo/api/client/SnapshotBase.java| 104 -
 .../apache/fluo/api/client/TransactionBase.java |  12 +-
 .../client/TestDefaultTransactionMethods.java   | 210 +++
 .../apache/fluo/core/impl/TransactionImpl.java  |  36 
 .../org/apache/fluo/core/impl/TxStringUtil.java |  64 --
 .../fluo/core/log/TracingTransaction.java   |  37 
 .../fluo/integration/TestTransaction.java   |  36 
 7 files changed, 316 insertions(+), 183 deletions(-)
--




[3/3] incubator-fluo git commit: Merge branch 'fluo-746'

2016-08-04 Thread kturner
Merge branch 'fluo-746'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/f8d0af6e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/f8d0af6e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/f8d0af6e

Branch: refs/heads/master
Commit: f8d0af6e92a58beebf2060416448a1f3ed138fe6
Parents: 5400971 aa36c88
Author: Keith Turner 
Authored: Thu Aug 4 09:56:42 2016 -0400
Committer: Keith Turner 
Committed: Thu Aug 4 09:56:42 2016 -0400

--
 .../fluo/accumulo/data/WriteUtilImpl.java   |  36 ---
 .../fluo/accumulo/util/ByteArrayUtil.java   |  65 +++-
 .../fluo/accumulo/util/NotificationUtil.java|   4 +-
 .../apache/fluo/accumulo/values/LockValue.java  |   6 +-
 .../java/org/apache/fluo/api/data/Bytes.java| 307 ---
 .../org/apache/fluo/api/data/BytesBuilder.java  | 133 
 .../apache/fluo/api/data/BytesBuilderTest.java  | 164 ++
 .../org/apache/fluo/api/data/BytesTest.java | 171 +++
 .../org/apache/fluo/api/data/ColumnTest.java| 122 
 .../org/apache/fluo/api/data/RowColumnTest.java |  86 ++
 .../fluo/api/data/RowColumnValueTest.java   |  87 ++
 .../java/org/apache/fluo/api/data/SpanTest.java | 260 
 .../org/apache/fluo/core/util/ByteUtil.java |  19 ++
 .../org/apache/fluo/core/util/ColumnUtil.java   |  22 +-
 .../apache/fluo/core/data/BytesBuilderTest.java | 131 
 .../org/apache/fluo/core/data/BytesTest.java| 102 --
 .../org/apache/fluo/core/data/ColumnTest.java   | 122 
 .../apache/fluo/core/data/RowColumnTest.java|  86 --
 .../fluo/core/data/RowColumnValueTest.java  |  87 --
 .../org/apache/fluo/core/data/SpanTest.java | 260 
 .../org/apache/fluo/core/util/ByteUtilTest.java |  18 ++
 21 files changed, 1196 insertions(+), 1092 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/f8d0af6e/modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java
--
diff --cc modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java
index 000,12acdcc..56c33f6
mode 00,100644..100644
--- a/modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java
+++ b/modules/api/src/test/java/org/apache/fluo/api/data/BytesTest.java
@@@ -1,0 -1,163 +1,171 @@@
+ /*
+  * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+  * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+  * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+  * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+  * copy of the License at
+  * 
+  * http://www.apache.org/licenses/LICENSE-2.0
+  * 
+  * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF 
ANY KIND, either express
+  * or implied. See the License for the specific language governing 
permissions and limitations under
+  * the License.
+  */
+ 
+ package org.apache.fluo.api.data;
+ 
+ import java.io.ByteArrayOutputStream;
+ import java.io.IOException;
+ import java.nio.ByteBuffer;
+ import java.nio.ReadOnlyBufferException;
+ import java.nio.charset.StandardCharsets;
+ import java.util.Arrays;
+ 
+ import org.apache.fluo.api.data.Bytes;
+ import org.junit.Assert;
+ import org.junit.Test;
+ 
+ /**
+  * Unit test for {@link Bytes}
+  */
+ public class BytesTest {
+ 
+   @Test
+   public void testBytesWrap() {
+ 
+ String s1 = "test1";
+ Bytes b1 = Bytes.of(s1);
+ Assert.assertArrayEquals(s1.getBytes(), b1.toArray());
+ Assert.assertEquals(s1, b1.toString());
+ 
+ String s2 = "test2";
+ ByteBuffer bb = ByteBuffer.wrap(s2.getBytes());
+ Bytes b2 = Bytes.of(bb);
+ Assert.assertArrayEquals(s2.getBytes(), b2.toArray());
+ Assert.assertEquals(s2, b2.toString());
+ 
+ // call again to ensure that position was not changed by previous call
+ b2 = Bytes.of(bb);
+ Assert.assertArrayEquals(s2.getBytes(), b2.toArray());
+ Assert.assertEquals(s2, b2.toString());
+ 
+ String s3 = "test3";
+ Bytes b3 = Bytes.of(s3.getBytes());
+ Assert.assertArrayEquals(s3.getBytes(), b3.toArray());
+ Assert.assertEquals(s3, b3.toString());
+ 
+ String s4 = "test4";
+ byte[] d4 = s4.getBytes();
+ Bytes b4 = Bytes.of(d4, 0, d4.length);
+ Assert.assertArrayEquals(s4.getBytes(), b4.toArray());
+ Assert.assertEquals(s4, b4.toString());
+   }
+ 
+   @Test
+   public void testImmutable() {
+ byte[] d1 = 

[1/2] incubator-fluo git commit: Fixes #740 - Use Java hashcode helper methods. * Removed hashCode() method from Bytes. * Add hashCode() method to MutableBytes. * Used Java helper methods for hashCode

2016-08-01 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/master 69f8369c7 -> 540097174


Fixes #740 - Use Java hashcode helper methods.
*  Removed hashCode() method from Bytes.
*  Add hashCode() method to MutableBytes.
*  Used Java helper methods for hashCode() methods in data classes.
*  Added test to BytesTest to check for proper hashing.


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/61a43a7b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/61a43a7b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/61a43a7b

Branch: refs/heads/master
Commit: 61a43a7b84db631b8bd8a58e0a802c367f5dda7b
Parents: 051a33b
Author: Christopher McTague 
Authored: Thu Jul 28 14:35:28 2016 -0400
Committer: Keith Turner 
Committed: Mon Aug 1 10:46:25 2016 -0400

--
 .../api/src/main/java/org/apache/fluo/api/data/Column.java   | 2 +-
 .../src/main/java/org/apache/fluo/api/data/ColumnValue.java  | 3 ++-
 .../src/main/java/org/apache/fluo/api/data/RowColumn.java| 2 +-
 .../main/java/org/apache/fluo/api/data/RowColumnValue.java   | 4 +++-
 .../src/test/java/org/apache/fluo/core/data/BytesTest.java   | 8 
 .../test/java/org/apache/fluo/core/data/RowColumnTest.java   | 2 +-
 6 files changed, 16 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/61a43a7b/modules/api/src/main/java/org/apache/fluo/api/data/Column.java
--
diff --git a/modules/api/src/main/java/org/apache/fluo/api/data/Column.java 
b/modules/api/src/main/java/org/apache/fluo/api/data/Column.java
index 8d17a93..0c0ed29 100644
--- a/modules/api/src/main/java/org/apache/fluo/api/data/Column.java
+++ b/modules/api/src/main/java/org/apache/fluo/api/data/Column.java
@@ -172,7 +172,7 @@ public class Column implements Comparable, 
Serializable {
 
   @Override
   public int hashCode() {
-return family.hashCode() + 31 * (31 * qualifier.hashCode() + 
visibility.hashCode());
+return Objects.hash(family, qualifier, visibility);
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/61a43a7b/modules/api/src/main/java/org/apache/fluo/api/data/ColumnValue.java
--
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/data/ColumnValue.java 
b/modules/api/src/main/java/org/apache/fluo/api/data/ColumnValue.java
index 4080e8c..92def93 100644
--- a/modules/api/src/main/java/org/apache/fluo/api/data/ColumnValue.java
+++ b/modules/api/src/main/java/org/apache/fluo/api/data/ColumnValue.java
@@ -16,6 +16,7 @@
 package org.apache.fluo.api.data;
 
 import java.io.Serializable;
+import java.util.Objects;
 
 /**
  * @since 1.0.0
@@ -73,7 +74,7 @@ public class ColumnValue implements Serializable, 
Comparable {
 
   @Override
   public int hashCode() {
-return column.hashCode() + 31 * val.hashCode();
+return Objects.hash(column, val);
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/61a43a7b/modules/api/src/main/java/org/apache/fluo/api/data/RowColumn.java
--
diff --git a/modules/api/src/main/java/org/apache/fluo/api/data/RowColumn.java 
b/modules/api/src/main/java/org/apache/fluo/api/data/RowColumn.java
index 1fa43d7..28ead11 100644
--- a/modules/api/src/main/java/org/apache/fluo/api/data/RowColumn.java
+++ b/modules/api/src/main/java/org/apache/fluo/api/data/RowColumn.java
@@ -122,7 +122,7 @@ public class RowColumn implements Comparable, 
Serializable {
 
   @Override
   public int hashCode() {
-return row.hashCode() + 31 * col.hashCode();
+return Objects.hash(row, col);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/61a43a7b/modules/api/src/main/java/org/apache/fluo/api/data/RowColumnValue.java
--
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/data/RowColumnValue.java 
b/modules/api/src/main/java/org/apache/fluo/api/data/RowColumnValue.java
index de32948..f1a325e 100644
--- a/modules/api/src/main/java/org/apache/fluo/api/data/RowColumnValue.java
+++ b/modules/api/src/main/java/org/apache/fluo/api/data/RowColumnValue.java
@@ -15,6 +15,8 @@
 
 package org.apache.fluo.api.data;
 
+import java.util.Objects;
+
 /**
  * An immutable object that can hold a row, column, and value.
  *
@@ -49,7 +51,7 @@ public class RowColumnValue extends RowColumn {
 
   @Override
   public int hashCode() {
-return super.hashCode() + 31 * val.hashCode();
+return Objects.hash(super.hashCode(), val);
   }
 
   @Override


[2/3] incubator-fluo git commit: fixes #743 made data classes final

2016-07-29 Thread kturner
fixes #743 made data classes final


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/2805e2fa
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/2805e2fa
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/2805e2fa

Branch: refs/heads/master
Commit: 2805e2fadbcc1dedfcc9c422e642d39fefe3cdfc
Parents: 051a33b
Author: Keith Turner 
Authored: Thu Jul 28 17:32:55 2016 -0400
Committer: Keith Turner 
Committed: Fri Jul 29 15:31:51 2016 -0400

--
 .../apache/fluo/accumulo/data/MutableBytes.java | 135 ---
 .../fluo/accumulo/data/MutableBytesFactory.java |  30 -
 .../java/org/apache/fluo/api/data/Bytes.java| 109 +--
 .../java/org/apache/fluo/api/data/Column.java   |   2 +-
 .../org/apache/fluo/api/data/ColumnValue.java   |   2 +-
 .../org/apache/fluo/api/data/RowColumn.java |   2 +-
 .../apache/fluo/api/data/RowColumnValue.java|  77 +++
 .../java/org/apache/fluo/api/data/Span.java |   2 +-
 .../org/apache/fluo/core/impl/Notification.java |  28 ++--
 .../apache/fluo/core/impl/TransactionImpl.java  |   6 +-
 .../java/org/apache/fluo/core/util/Hex.java |   2 +-
 .../fluo/core/worker/NotificationProcessor.java |  10 +-
 .../finder/hash/HashNotificationFinder.java |   6 +-
 .../apache/fluo/core/data/MutableBytesTest.java |  52 ---
 .../fluo/core/data/RowColumnValueTest.java  |   7 -
 .../fluo/mapreduce/FluoEntryInputFormat.java|   2 +-
 16 files changed, 158 insertions(+), 314 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/2805e2fa/modules/accumulo/src/main/java/org/apache/fluo/accumulo/data/MutableBytes.java
--
diff --git 
a/modules/accumulo/src/main/java/org/apache/fluo/accumulo/data/MutableBytes.java
 
b/modules/accumulo/src/main/java/org/apache/fluo/accumulo/data/MutableBytes.java
deleted file mode 100644
index 898382f..000
--- 
a/modules/accumulo/src/main/java/org/apache/fluo/accumulo/data/MutableBytes.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
- * agreements. See the NOTICE file distributed with this work for additional 
information regarding
- * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the 
License. You may obtain a
- * copy of the License at
- * 
- * http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software 
distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
- * or implied. See the License for the specific language governing permissions 
and limitations under
- * the License.
- */
-
-package org.apache.fluo.accumulo.data;
-
-import java.io.Serializable;
-import java.nio.charset.Charset;
-import java.nio.charset.StandardCharsets;
-
-import org.apache.fluo.api.data.Bytes;
-
-/**
- * An implementation of {@link Bytes} that is mutable and uses a backing byte 
array
- */
-public class MutableBytes extends Bytes implements Serializable {
-
-  private static final long serialVersionUID = 1L;
-
-  private final byte[] data;
-  private final int offset;
-  private final int length;
-
-  public MutableBytes() {
-this.data = null;
-this.offset = 0;
-this.length = 0;
-  }
-
-  /**
-   * Creates a new MutableBytes. The given byte array is used directly as the 
backing array so later
-   * changes made to the array reflect into the new sequence.
-   */
-  public MutableBytes(byte[] data) {
-this.data = data;
-this.offset = 0;
-this.length = data.length;
-  }
-
-  /**
-   * Creates a new MutableBytes from a subsequence of the given byte array. 
The given byte array is
-   * used directly as the backing array, so later changes made to the 
(relevant portion of the)
-   * array reflect into the new sequence.
-   *
-   * @param data byte data
-   * @param offset starting offset in byte array (inclusive)
-   * @param length number of bytes to include in sequence
-   * @throws IllegalArgumentException if the offset or length are out of 
bounds for the given byte
-   * array
-   */
-  public MutableBytes(byte[] data, int offset, int length) {
-if (offset < 0 || offset > data.length || length < 0 || (offset + length) 
> data.length) {
-  throw new IllegalArgumentException(" Bad offset and/or length 
data.length = " + data.length
-  + " offset = " + offset + " length = " + length);
-}
-this.data = data;
-this.offset = offset;
-this.length = length;
-  }
-
-  /**

incubator-fluo git commit: Add incubator disclaimer to Fluo Parent POM

2016-07-27 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/fluo-parent b19c35458 -> 005d8ea9f


Add incubator disclaimer to Fluo Parent POM


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/005d8ea9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/005d8ea9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/005d8ea9

Branch: refs/heads/fluo-parent
Commit: 005d8ea9f5c26f729e28facc420829955f0c2c3a
Parents: b19c354
Author: Christopher Tubbs 
Authored: Tue Jul 26 17:12:39 2016 -0400
Committer: Christopher Tubbs 
Committed: Tue Jul 26 17:12:39 2016 -0400

--
 DISCLAIMER | 9 +
 1 file changed, 9 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/005d8ea9/DISCLAIMER
--
diff --git a/DISCLAIMER b/DISCLAIMER
new file mode 100644
index 000..d028686
--- /dev/null
+++ b/DISCLAIMER
@@ -0,0 +1,9 @@
+Apache Fluo is an effort undergoing incubation at The Apache Software
+Foundation (ASF), sponsored by Apache Incubator.
+
+Incubation is required of all newly accepted projects until a further review
+indicates that the infrastructure, communications, and decision making process
+have stabilized in a manner consistent with other successful ASF projects.
+While incubation status is not necessarily a reflection of the completeness
+or stability of the code, it does indicate that the project has yet
+to be fully endorsed by the ASF.



[2/2] incubator-fluo git commit: Merge branch 'fluo-723'

2016-07-25 Thread kturner
Merge branch 'fluo-723'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/b30c9d76
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/b30c9d76
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/b30c9d76

Branch: refs/heads/master
Commit: b30c9d76f917275cf552a75b49d57c89efb80c79
Parents: aa5c766 0e1a601
Author: Keith Turner 
Authored: Mon Jul 25 14:55:22 2016 -0400
Committer: Keith Turner 
Committed: Mon Jul 25 14:55:22 2016 -0400

--
 .../org/apache/fluo/api/client/FluoAdmin.java   | 31 
 .../fluo/cluster/runner/ClusterAppRunner.java   |  2 +-
 .../apache/fluo/core/client/FluoAdminImpl.java  |  3 +-
 .../org/apache/fluo/integration/ITBaseImpl.java |  5 ++--
 .../org/apache/fluo/integration/ITBaseMini.java |  5 ++--
 .../integration/client/FluoAdminImplIT.java | 10 ---
 .../java/org/apache/fluo/mini/MiniFluoImpl.java |  4 +--
 7 files changed, 35 insertions(+), 25 deletions(-)
--




incubator-fluo git commit: fixes #717 Fixed readme, notice, license, and travis files

2016-07-22 Thread kturner
Repository: incubator-fluo
Updated Branches:
  refs/heads/fluo-parent fac72e982 -> b19c35458


fixes #717 Fixed readme, notice, license, and travis files


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/b19c3545
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/b19c3545
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/b19c3545

Branch: refs/heads/fluo-parent
Commit: b19c3545800fa5a3ac650b6ae27a94bf04f1a404
Parents: fac72e9
Author: Keith Turner 
Authored: Fri Jul 22 15:10:00 2016 -0400
Committer: Keith Turner 
Committed: Fri Jul 22 17:01:46 2016 -0400

--
 .travis.yml |  2 --
 LICENSE |  5 +++--
 NOTICE  |  6 +-
 README.md   | 27 ++-
 4 files changed, 18 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/b19c3545/.travis.yml
--
diff --git a/.travis.yml b/.travis.yml
index 0595e1d..18b277f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -2,6 +2,4 @@ language: java
 
 jdk:
   - oraclejdk8
-  - oraclejdk7
-  - openjdk7
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/b19c3545/LICENSE
--
diff --git a/LICENSE b/LICENSE
index 8dada3e..d645695 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,3 +1,4 @@
+
  Apache License
Version 2.0, January 2004
 http://www.apache.org/licenses/
@@ -178,7 +179,7 @@
APPENDIX: How to apply the Apache License to your work.
 
   To apply the Apache License to your work, attach the following
-  boilerplate notice, with the fields enclosed by brackets "{}"
+  boilerplate notice, with the fields enclosed by brackets "[]"
   replaced with your own identifying information. (Don't include
   the brackets!)  The text should be enclosed in the appropriate
   comment syntax for the file format. We also recommend that a
@@ -186,7 +187,7 @@
   same "printed page" as the copyright notice for easier
   identification within third-party archives.
 
-   Copyright {} {name of copyright owner}
+   Copyright [] [name of copyright owner]
 
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/b19c3545/NOTICE
--
diff --git a/NOTICE b/NOTICE
index d2fa8fb..dab393a 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1 +1,5 @@
-Copyright 2016 fluo.io contributors
+Apache Fluo
+Copyright 2016 The Apache Software Foundation.
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).

http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/b19c3545/README.md
--
diff --git a/README.md b/README.md
index 7e7661e..22a4f92 100644
--- a/README.md
+++ b/README.md
@@ -12,27 +12,20 @@
   limitations under the License.
 -->
 
-[![Build Status][ti]][tl] [![Maven Central][mi]][ml] [![Issues][ii]][il]
-[![Forks][fi]][fl] [![Stars][si]][sl] [![Apache License][li]][ll]
+[![Build Status][ti]][tl] [![Maven Central][mi]][ml] [![Apache 
License][li]][ll]
 
-# Fluo.io Parent POM
+# Apache Fluo Parent POM
 
 View documentation at:
-http://fluo.io
+https://fluo.apache.org
 
-Parent pom for fluo-io projects
+Parent pom for Apache Fluo projects
 
 This project uses a 1-up counter for its versioning.
 
-[ti]: https://travis-ci.org/fluo-io/fluo-io-parent.svg?branch=master
-[tl]: https://travis-ci.org/fluo-io/fluo-io-parent
-[mi]: 
https://maven-badges.herokuapp.com/maven-central/io.fluo/fluo-io-parent/badge.svg
-[ml]: https://maven-badges.herokuapp.com/maven-central/io.fluo/fluo-io-parent
-[ii]: https://img.shields.io/github/issues/fluo-io/fluo-io-parent.svg
-[il]: https://github.com/fluo-io/fluo-io-parent/issues
-[fi]: https://img.shields.io/github/forks/fluo-io/fluo-io-parent.svg
-[fl]: https://github.com/fluo-io/fluo-io-parent/network
-[si]: https://img.shields.io/github/stars/fluo-io/fluo-io-parent.svg
-[sl]: https://github.com/fluo-io/fluo-io-parent/stargazers
-[li]: http://img.shields.io/badge/license-ASL-blue.svg
-[ll]: https://github.com/fluo-io/fluo-io-parent/blob/master/LICENSE
+[ti]: https://travis-ci.org/apache/incubator-fluo.svg?branch=fluo-parent
+[tl]: https://travis-ci.org/apache/incubator-fluo/branches
+[mi]: 
https://maven-badges.herokuapp.com/maven-central/org.apache.fluo/fluo-parent/badge.svg
+[ml]: 
https://maven-badges.herokuapp.com/maven-central/org.apache.fluo/fluo-parent

[2/2] incubator-fluo git commit: Merge branch 'fixes435'

2016-07-18 Thread kturner
Merge branch 'fixes435'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/8944203d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/8944203d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/8944203d

Branch: refs/heads/master
Commit: 8944203df03c3ec35edb1784a47f3b49091a051a
Parents: d70b860 22a4911
Author: Keith Turner 
Authored: Mon Jul 18 15:05:24 2016 -0400
Committer: Keith Turner 
Committed: Mon Jul 18 15:05:24 2016 -0400

--
 modules/accumulo/pom.xml |  5 -
 modules/api/pom.xml  | 14 -
 modules/cluster/pom.xml  | 41 +++
 modules/core/pom.xml | 14 +
 modules/distribution/pom.xml |  8 
 modules/integration/pom.xml  | 19 +-
 modules/mapreduce/pom.xml| 30 
 modules/mini/pom.xml |  8 
 pom.xml  | 23 ++
 9 files changed, 63 insertions(+), 99 deletions(-)
--




[05/10] incubator-fluo-recipes git commit: Updated package names in core module

2016-07-15 Thread kturner
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/beea3f96/modules/core/src/main/java/org/apache/fluo/recipes/core/types/TypedSnapshotBase.java
--
diff --git 
a/modules/core/src/main/java/org/apache/fluo/recipes/core/types/TypedSnapshotBase.java
 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/types/TypedSnapshotBase.java
new file mode 100644
index 000..7764e67
--- /dev/null
+++ 
b/modules/core/src/main/java/org/apache/fluo/recipes/core/types/TypedSnapshotBase.java
@@ -0,0 +1,555 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+
+package org.apache.fluo.recipes.core.types;
+
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import com.google.common.collect.Maps;
+import org.apache.commons.collections.map.DefaultedMap;
+import org.apache.fluo.api.client.SnapshotBase;
+import org.apache.fluo.api.config.ScannerConfiguration;
+import org.apache.fluo.api.data.Bytes;
+import org.apache.fluo.api.data.Column;
+import org.apache.fluo.api.data.RowColumn;
+import org.apache.fluo.api.iterator.RowIterator;
+import org.apache.fluo.recipes.core.types.TypeLayer.Data;
+import org.apache.fluo.recipes.core.types.TypeLayer.FamilyMethods;
+import org.apache.fluo.recipes.core.types.TypeLayer.QualifierMethods;
+import org.apache.fluo.recipes.core.types.TypeLayer.RowMethods;
+
+// TODO need to refactor column to use Encoder
+
+/**
+ * A {@link SnapshotBase} that uses a {@link TypeLayer}
+ *
+ * @since 1.0.0
+ */
+public class TypedSnapshotBase implements SnapshotBase {
+
+  private SnapshotBase snapshot;
+  private Encoder encoder;
+  private TypeLayer tl;
+
+  /**
+   * @since 1.0.0
+   */
+  public class VisibilityMethods extends Value {
+
+VisibilityMethods(Data data) {
+  super(data);
+}
+
+public Value vis(Bytes cv) {
+  data.vis = cv;
+  return new Value(data);
+}
+
+public Value vis(byte[] cv) {
+  data.vis = Bytes.of(cv);
+  return new Value(data);
+}
+
+public Value vis(ByteBuffer bb) {
+  data.vis = Bytes.of(bb);
+  return new Value(data);
+}
+
+public Value vis(String cv) {
+  data.vis = Bytes.of(cv);
+  return new Value(data);
+}
+  }
+
+  /**
+   * @since 1.0.0
+   */
+  public class Value {
+private Bytes bytes;
+private boolean gotBytes = false;
+Data data;
+
+public Bytes getBytes() {
+  if (!gotBytes) {
+try {
+  bytes = snapshot.get(data.row, data.getCol());
+  gotBytes = true;
+} catch (Exception e) {
+  if (e instanceof RuntimeException) {
+throw (RuntimeException) e;
+  }
+  throw new RuntimeException(e);
+}
+  }
+
+  return bytes;
+}
+
+private Value(Bytes bytes) {
+  this.bytes = bytes;
+  this.gotBytes = true;
+}
+
+private Value(Data data) {
+  this.data = data;
+  this.gotBytes = false;
+}
+
+public Integer toInteger() {
+  if (getBytes() == null) {
+return null;
+  }
+  return encoder.decodeInteger(getBytes());
+}
+
+public int toInteger(int defaultValue) {
+  if (getBytes() == null) {
+return defaultValue;
+  }
+  return encoder.decodeInteger(getBytes());
+}
+
+public Long toLong() {
+  if (getBytes() == null) {
+return null;
+  }
+  return encoder.decodeLong(getBytes());
+}
+
+public long toLong(long defaultValue) {
+  if (getBytes() == null) {
+return defaultValue;
+  }
+  return encoder.decodeLong(getBytes());
+}
+
+@Override
+public String toString() {
+  if (getBytes() == null) {
+return null;
+  }
+  return encoder.decodeString(getBytes());
+}
+
+public String toString(String defaultValue) {
+  if (getBytes() == null) {
+return defaultValue;
+  }
+  return encoder.decodeString(getBytes());
+}
+
+public Float toFloat() {
+  if 

[02/10] incubator-fluo-recipes git commit: Updated package names in core module

2016-07-15 Thread kturner
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/beea3f96/modules/core/src/test/java/org/apache/fluo/recipes/core/types/MockSnapshot.java
--
diff --git 
a/modules/core/src/test/java/org/apache/fluo/recipes/core/types/MockSnapshot.java
 
b/modules/core/src/test/java/org/apache/fluo/recipes/core/types/MockSnapshot.java
new file mode 100644
index 000..64fa7c2
--- /dev/null
+++ 
b/modules/core/src/test/java/org/apache/fluo/recipes/core/types/MockSnapshot.java
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+
+package org.apache.fluo.recipes.core.types;
+
+import org.apache.fluo.api.client.Snapshot;
+
+public class MockSnapshot extends MockSnapshotBase implements Snapshot {
+
+  MockSnapshot(String... entries) {
+super(entries);
+  }
+
+  @Override
+  public void close() {
+// no resources need to be closed
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/beea3f96/modules/core/src/test/java/org/apache/fluo/recipes/core/types/MockSnapshotBase.java
--
diff --git 
a/modules/core/src/test/java/org/apache/fluo/recipes/core/types/MockSnapshotBase.java
 
b/modules/core/src/test/java/org/apache/fluo/recipes/core/types/MockSnapshotBase.java
new file mode 100644
index 000..d31b36c
--- /dev/null
+++ 
b/modules/core/src/test/java/org/apache/fluo/recipes/core/types/MockSnapshotBase.java
@@ -0,0 +1,202 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to you under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+
+package org.apache.fluo.recipes.core.types;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import org.apache.fluo.api.client.SnapshotBase;
+import org.apache.fluo.api.config.ScannerConfiguration;
+import org.apache.fluo.api.data.Bytes;
+import org.apache.fluo.api.data.Column;
+import org.apache.fluo.api.data.RowColumn;
+import org.apache.fluo.api.iterator.RowIterator;
+import org.apache.fluo.core.impl.TxStringUtil;
+
+public class MockSnapshotBase implements SnapshotBase {
+
+  final Map> getData;
+
+  /**
+   * Initializes {@link #getData} using {@link #toRCVM(String...)}
+   */
+  MockSnapshotBase(String... entries) {
+getData = toRCVM(entries);
+  }
+
+  @Override
+  public Bytes get(Bytes row, Column column) {
+Map cols = getData.get(row);
+if (cols != null) {
+  return cols.get(column);
+}
+
+return null;
+  }
+
+  @Override
+  public Map get(Bytes row, Set columns) {
+Map ret = new HashMap<>();
+Map cols = getData.get(row);
+if (cols != null) {
+  for (Column column : columns) {
+Bytes val = cols.get(column);
+if (val != null) {
+  ret.put(column, val);
+}
+  }
+}
+return ret;
+  }
+
+  @Override
+  public Map> get(Collection rows, 
Set columns) {
+
+Map> ret = new HashMap<>();
+
+for (Bytes row : rows) {
+  Map colMap = get(row, columns);
+  if (colMap != null && colMap.size() > 0) {
+ret.put(row, colMap);
+  }
+}
+
+return ret;
+  }
+
+  @Override
+  public RowIterator get(ScannerConfiguration config) {
+throw new UnsupportedOperationException();
+  }
+
+  /**
+   * toRCVM stands for "To Row 

[10/10] incubator-fluo-recipes git commit: Merge remote-tracking branch 'mike/package-refactor'

2016-07-15 Thread kturner
Merge remote-tracking branch 'mike/package-refactor'

Conflicts:
docs/row-hasher.md

modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/cmds/OptimizeTable.java

modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/ops/TableOperations.java
modules/core/src/main/java/org/apache/fluo/recipes/common/Pirtos.java

modules/core/src/main/java/org/apache/fluo/recipes/common/TableOptimizations.java

modules/core/src/main/java/org/apache/fluo/recipes/core/common/Pirtos.java

modules/core/src/main/java/org/apache/fluo/recipes/core/data/RowHasher.java

modules/core/src/main/java/org/apache/fluo/recipes/core/export/ExportQueue.java

modules/core/src/main/java/org/apache/fluo/recipes/core/map/CollisionFreeMap.java

modules/core/src/test/java/org/apache/fluo/recipes/core/map/SplitsTest.java

modules/test/src/main/java/org/apache/fluo/recipes/test/AccumuloExportITBase.java


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/22354d0f
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/22354d0f
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/22354d0f

Branch: refs/heads/master
Commit: 22354d0f7f03f532ec093b7ece61b5ae9fb070e9
Parents: a8b85f3 083e4af
Author: Keith Turner 
Authored: Fri Jul 15 18:01:55 2016 -0400
Committer: Keith Turner 
Committed: Fri Jul 15 18:01:55 2016 -0400

--
 docs/export-queue.md|   2 +-
 docs/row-hasher.md  |   4 +-
 docs/serialization.md   |   2 +-
 docs/transient.md   |   2 +-
 .../recipes/accumulo/cmds/CompactTransient.java |  13 +-
 .../recipes/accumulo/cmds/OptimizeTable.java|   6 +-
 .../recipes/accumulo/export/AccumuloExport.java |   1 +
 .../accumulo/export/AccumuloExporter.java   |   5 +-
 .../accumulo/export/DifferenceExport.java   |   1 +
 .../accumulo/export/ReplicationExport.java  |   5 +-
 .../accumulo/export/SharedBatchWriter.java  |  14 +-
 .../fluo/recipes/accumulo/export/TableInfo.java |   3 +
 .../recipes/accumulo/ops/TableOperations.java   |   9 +-
 .../apache/fluo/recipes/common/RowRange.java|  82 ---
 .../fluo/recipes/common/TableOptimizations.java |  82 ---
 .../fluo/recipes/common/TransientRegistry.java  |  79 ---
 .../fluo/recipes/core/common/RowRange.java  |  85 +++
 .../recipes/core/common/TableOptimizations.java |  84 +++
 .../recipes/core/common/TransientRegistry.java  |  80 +++
 .../fluo/recipes/core/data/RowHasher.java   | 137 
 .../apache/fluo/recipes/core/export/Export.java |  41 ++
 .../fluo/recipes/core/export/ExportBucket.java  | 203 ++
 .../fluo/recipes/core/export/ExportEntry.java   |  22 +
 .../recipes/core/export/ExportObserver.java | 143 
 .../fluo/recipes/core/export/ExportQueue.java   | 277 
 .../fluo/recipes/core/export/Exporter.java  |  67 ++
 .../recipes/core/export/SequencedExport.java|  32 +
 .../fluo/recipes/core/impl/BucketUtil.java  |  24 +
 .../fluo/recipes/core/map/CollisionFreeMap.java | 657 +++
 .../core/map/CollisionFreeMapObserver.java  |  54 ++
 .../apache/fluo/recipes/core/map/Combiner.java  |  34 +
 .../recipes/core/map/NullUpdateObserver.java|  25 +
 .../apache/fluo/recipes/core/map/Update.java|  46 ++
 .../fluo/recipes/core/map/UpdateObserver.java   |  35 +
 .../core/serialization/SimpleSerializer.java|  59 ++
 .../fluo/recipes/core/transaction/LogEntry.java | 116 
 .../core/transaction/RecordingTransaction.java  |  66 ++
 .../transaction/RecordingTransactionBase.java   | 252 +++
 .../fluo/recipes/core/transaction/TxLog.java|  81 +++
 .../apache/fluo/recipes/core/types/Encoder.java |  86 +++
 .../fluo/recipes/core/types/StringEncoder.java  |  86 +++
 .../fluo/recipes/core/types/TypeLayer.java  | 488 ++
 .../fluo/recipes/core/types/TypedLoader.java|  45 ++
 .../fluo/recipes/core/types/TypedObserver.java  |  46 ++
 .../fluo/recipes/core/types/TypedSnapshot.java  |  38 ++
 .../recipes/core/types/TypedSnapshotBase.java   | 555 
 .../recipes/core/types/TypedTransaction.java|  46 ++
 .../core/types/TypedTransactionBase.java| 278 
 .../org/apache/fluo/recipes/data/RowHasher.java | 135 
 .../org/apache/fluo/recipes/export/Export.java  |  38 --
 .../fluo/recipes/export/ExportBucket.java   | 203 --
 .../apache/fluo/recipes/export/ExportEntry.java |  22 -
 .../fluo/recipes/export/ExportObserver.java | 140 
 .../apache/fluo/recipes/export/ExportQueue.java | 274 
 .../apache/fluo/recipes/export/Exporter.java|  64 --
 .../fluo/recipes/export/SequencedExport.java|  29 -
 

[08/10] incubator-fluo-recipes git commit: Made SharedBatchWriter package private

2016-07-15 Thread kturner
Made SharedBatchWriter package private


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/594997ab
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/594997ab
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/594997ab

Branch: refs/heads/master
Commit: 594997ab7afe4f5a0b57854e64f245b96816aaeb
Parents: beea3f9
Author: Mike Walch 
Authored: Fri Jul 15 11:50:40 2016 -0400
Committer: Mike Walch 
Committed: Fri Jul 15 11:50:40 2016 -0400

--
 .../recipes/accumulo/export/SharedBatchWriter.java| 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/594997ab/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/SharedBatchWriter.java
--
diff --git 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/SharedBatchWriter.java
 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/SharedBatchWriter.java
index ddc7830..9d189e6 100644
--- 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/SharedBatchWriter.java
+++ 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/export/SharedBatchWriter.java
@@ -36,14 +36,14 @@ import org.apache.accumulo.core.client.ZooKeeperInstance;
 import org.apache.accumulo.core.client.security.tokens.PasswordToken;
 import org.apache.accumulo.core.data.Mutation;
 
-public class SharedBatchWriter {
+class SharedBatchWriter {
 
   private static class Mutations {
 
 List mutations;
 CountDownLatch cdl = new CountDownLatch(1);
 
-public Mutations(Collection mutations) {
+Mutations(Collection mutations) {
   this.mutations = new ArrayList<>(mutations);
 }
   }
@@ -52,8 +52,8 @@ public class SharedBatchWriter {
 
 private BatchWriter bw;
 
-public ExportTask(String instanceName, String zookeepers, String user, 
String password,
-String table) throws TableNotFoundException, AccumuloException, 
AccumuloSecurityException {
+ExportTask(String instanceName, String zookeepers, String user, String 
password, String table)
+throws TableNotFoundException, AccumuloException, 
AccumuloSecurityException {
   ZooKeeperInstance zki =
   new ZooKeeperInstance(new 
ClientConfiguration().withInstance(instanceName).withZkHosts(
   zookeepers));
@@ -107,7 +107,7 @@ public class SharedBatchWriter {
 
   private static LinkedBlockingQueue exportQueue = null;
 
-  public SharedBatchWriter(String instanceName, String zookeepers, String 
user, String password,
+  private SharedBatchWriter(String instanceName, String zookeepers, String 
user, String password,
   String table) throws Exception {
 
 // TODO: fix this write to static and remove findbugs max rank override in 
pom.xml
@@ -121,7 +121,7 @@ public class SharedBatchWriter {
 
   private static Map exporters = new HashMap<>();
 
-  public static synchronized SharedBatchWriter getInstance(String 
instanceName, String zookeepers,
+  static synchronized SharedBatchWriter getInstance(String instanceName, 
String zookeepers,
   String user, String password, String table) throws Exception {
 
 String key =
@@ -137,7 +137,7 @@ public class SharedBatchWriter {
 return ret;
   }
 
-  public void write(Collection mutations) {
+  void write(Collection mutations) {
 Mutations work = new Mutations(mutations);
 exportQueue.add(work);
 try {



[1/3] incubator-fluo-recipes git commit: Fixes #50 - Rename Pirtos to TableOptimizations

2016-07-15 Thread kturner
Repository: incubator-fluo-recipes
Updated Branches:
  refs/heads/master f1dce1499 -> a8b85f332


Fixes #50 - Rename Pirtos to TableOptimizations


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/0ce1bc20
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/0ce1bc20
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/0ce1bc20

Branch: refs/heads/master
Commit: 0ce1bc20684ab383bb306f31e5435bb7100dd14a
Parents: f1dce14
Author: Mike Walch 
Authored: Thu Jul 14 10:49:28 2016 -0400
Committer: Mike Walch 
Committed: Thu Jul 14 10:49:28 2016 -0400

--
 docs/row-hasher.md  |  4 +-
 docs/table-optimization.md  |  6 +-
 .../recipes/accumulo/cmds/OptimizeTable.java|  5 +-
 .../recipes/accumulo/ops/TableOperations.java   | 14 ++--
 .../org/apache/fluo/recipes/common/Pirtos.java  | 83 
 .../fluo/recipes/common/TableOptimizations.java | 82 +++
 .../org/apache/fluo/recipes/data/RowHasher.java | 12 +--
 .../apache/fluo/recipes/export/ExportQueue.java | 21 ++---
 .../fluo/recipes/map/CollisionFreeMap.java  | 20 ++---
 .../fluo/recipes/common/TestGrouping.java   | 25 +++---
 .../org/apache/fluo/recipes/map/SplitsTest.java | 15 ++--
 .../fluo/recipes/test/AccumuloExportITBase.java |  5 +-
 12 files changed, 149 insertions(+), 143 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/0ce1bc20/docs/row-hasher.md
--
diff --git a/docs/row-hasher.md b/docs/row-hasher.md
index adb423f..78aab23 100644
--- a/docs/row-hasher.md
+++ b/docs/row-hasher.md
@@ -31,7 +31,7 @@ balancing of the prefix.
 
 ```java
 import org.apache.fluo.api.data.Bytes;
-import org.apache.fluo.recipes.common.Pirtos;
+import org.apache.fluo.recipes.common.TableOptimizations;
 import org.apache.fluo.recipes.data.RowHasher;
 
 public class RowHasherExample {
@@ -60,7 +60,7 @@ public class RowHasherExample {
 // Generate table optimizations for the recipe. This can be called when 
setting up an
 // application that uses a hashed row.
 int numTablets = 20;
-Pirtos tableOptimizations = 
pageRowHasher.getTableOptimizations(numTablets);
+TableOptimizations tableOptimizations = 
pageRowHasher.getTableOptimizations(numTablets);
 System.out.println("Balance config : " + 
tableOptimizations.getTabletGroupingRegex());
 System.out.println("Splits : ");
 tableOptimizations.getSplits().forEach(System.out::println);

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/0ce1bc20/docs/table-optimization.md
--
diff --git a/docs/table-optimization.md b/docs/table-optimization.md
index a194b5e..068f586 100644
--- a/docs/table-optimization.md
+++ b/docs/table-optimization.md
@@ -24,7 +24,7 @@ CollisionFreeMap.configure(fluoConf, ...);
 FluoFactory.newAdmin(fluoConf).initialize(...)
 
 //Automatically optimize the Fluo table for all configured recipes
-Pirtos tableOptimizations = getConfiguredOptimizations(fluoConf);
+TableOptimizations tableOptimizations = getConfiguredOptimizations(fluoConf);
 TableOperations.optimizeTable(fluoConf, tableOptimizations);
 ```
 
@@ -33,8 +33,8 @@ selective optimizations is need look into using the following 
methods instead.
 
  * `CollisionFreeMap.getTableOptimizations(String mapId, Configuration 
appConfig)`
  * `ExportQueue.getTableOptimizations(String queueId, Configuration appConfig)`
- * `TableOperations.optimizeTable(FluoConfiguration fluoConfig, Pirtos pirtos)`
- * `Pirtos.merge()`
+ * `TableOperations.optimizeTable(FluoConfiguration fluoConfig, 
TableOptimizations tableOptim)`
+ * `TableOptimizations.merge()`
 
 ## Command Example
 

http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/0ce1bc20/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/cmds/OptimizeTable.java
--
diff --git 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/cmds/OptimizeTable.java
 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/cmds/OptimizeTable.java
index 6b5276b..7910bdb 100644
--- 
a/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/cmds/OptimizeTable.java
+++ 
b/modules/accumulo/src/main/java/org/apache/fluo/recipes/accumulo/cmds/OptimizeTable.java
@@ -19,7 +19,7 @@ import javax.inject.Inject;
 
 import org.apache.fluo.api.config.FluoConfiguration;
 import org.apache.fluo.recipes.accumulo.ops.TableOperations;
-import org.apache.fluo.recipes.common.Pirtos;
+import 

[2/3] incubator-fluo-recipes git commit: Update whitespace in LICENSE file

2016-07-15 Thread kturner
Update whitespace in LICENSE file


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/9bafe1a1
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/9bafe1a1
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/9bafe1a1

Branch: refs/heads/master
Commit: 9bafe1a1e371ae6d8af45a5307c1333baf9981a2
Parents: f1dce14
Author: Mike Walch 
Authored: Fri Jul 15 13:34:03 2016 -0400
Committer: Mike Walch 
Committed: Fri Jul 15 13:34:03 2016 -0400

--
 LICENSE | 367 ++-
 1 file changed, 189 insertions(+), 178 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/blob/9bafe1a1/LICENSE
--
diff --git a/LICENSE b/LICENSE
index 37ec93a..d645695 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,180 +1,191 @@
-Apache License
-Version 2.0, January 2004
-http://www.apache.org/licenses/
-
-TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-1. Definitions.
-
-"License" shall mean the terms and conditions for use, reproduction, and
-distribution as defined by Sections 1 through 9 of this document.
-
-"Licensor" shall mean the copyright owner or entity authorized by the copyright
-owner that is granting the License.
-
-"Legal Entity" shall mean the union of the acting entity and all other entities
-that control, are controlled by, or are under common control with that entity.
-For the purposes of this definition, "control" means (i) the power, direct or
-indirect, to cause the direction or management of such entity, whether by
-contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the
-outstanding shares, or (iii) beneficial ownership of such entity.
-
-"You" (or "Your") shall mean an individual or Legal Entity exercising
-permissions granted by this License.
-
-"Source" form shall mean the preferred form for making modifications, including
-but not limited to software source code, documentation source, and 
configuration
-files.
-
-"Object" form shall mean any form resulting from mechanical transformation or
-translation of a Source form, including but not limited to compiled object 
code,
-generated documentation, and conversions to other media types.
-
-"Work" shall mean the work of authorship, whether in Source or Object form, 
made
-available under the License, as indicated by a copyright notice that is 
included
-in or attached to the work (an example is provided in the Appendix below).
-
-"Derivative Works" shall mean any work, whether in Source or Object form, that
-is based on (or derived from) the Work and for which the editorial revisions,
-annotations, elaborations, or other modifications represent, as a whole, an
-original work of authorship. For the purposes of this License, Derivative Works
-shall not include works that remain separable from, or merely link (or bind by
-name) to the interfaces of, the Work and Derivative Works thereof.
-
-"Contribution" shall mean any work of authorship, including the original 
version
-of the Work and any modifications or additions to that Work or Derivative Works
-thereof, that is intentionally submitted to Licensor for inclusion in the Work
-by the copyright owner or by an individual or Legal Entity authorized to submit
-on behalf of the copyright owner. For the purposes of this definition,
-"submitted" means any form of electronic, verbal, or written communication sent
-to the Licensor or its representatives, including but not limited to
-communication on electronic mailing lists, source code control systems, and
-issue tracking systems that are managed by, or on behalf of, the Licensor for
-the purpose of discussing and improving the Work, but excluding communication
-that is conspicuously marked or otherwise designated in writing by the 
copyright
-owner as "Not a Contribution."
-
-"Contributor" shall mean Licensor and any individual or Legal Entity on behalf
-of whom a Contribution has been received by Licensor and subsequently
-incorporated within the Work.
-
-2. Grant of Copyright License.
-
-Subject to the terms and conditions of this License, each Contributor hereby
-grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
-irrevocable copyright license to reproduce, prepare Derivative Works of,
-publicly display, publicly perform, sublicense, and distribute the Work and 
such
-Derivative Works in Source or Object form.
-
-3. Grant of Patent License.
-
-Subject to the terms and conditions of this License, each Contributor hereby
-grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
-irrevocable (except as stated in this section) patent license 

[3/3] incubator-fluo-recipes git commit: Merge remote-tracking branch 'mike/fr-50'

2016-07-15 Thread kturner
Merge remote-tracking branch 'mike/fr-50'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/commit/a8b85f33
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/tree/a8b85f33
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-fluo-recipes/diff/a8b85f33

Branch: refs/heads/master
Commit: a8b85f33288e32b73b6c042305f1cf065195b863
Parents: 9bafe1a 0ce1bc2
Author: Keith Turner 
Authored: Fri Jul 15 17:05:40 2016 -0400
Committer: Keith Turner 
Committed: Fri Jul 15 17:05:40 2016 -0400

--
 docs/row-hasher.md  |  4 +-
 docs/table-optimization.md  |  6 +-
 .../recipes/accumulo/cmds/OptimizeTable.java|  5 +-
 .../recipes/accumulo/ops/TableOperations.java   | 14 ++--
 .../org/apache/fluo/recipes/common/Pirtos.java  | 83 
 .../fluo/recipes/common/TableOptimizations.java | 82 +++
 .../org/apache/fluo/recipes/data/RowHasher.java | 12 +--
 .../apache/fluo/recipes/export/ExportQueue.java | 21 ++---
 .../fluo/recipes/map/CollisionFreeMap.java  | 20 ++---
 .../fluo/recipes/common/TestGrouping.java   | 25 +++---
 .../org/apache/fluo/recipes/map/SplitsTest.java | 15 ++--
 .../fluo/recipes/test/AccumuloExportITBase.java |  5 +-
 12 files changed, 149 insertions(+), 143 deletions(-)
--




[2/3] incubator-fluo git commit: fixes #639 vastly improved the scanner API

2016-07-15 Thread kturner
fixes #639 vastly improved the scanner API


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/23374784
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/23374784
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/23374784

Branch: refs/heads/master
Commit: 233747847831efc4dad6cc030a895860ead7d71e
Parents: e72a931
Author: Keith Turner 
Authored: Wed Jul 13 18:09:15 2016 -0400
Committer: Keith Turner 
Committed: Fri Jul 15 11:27:13 2016 -0400

--
 .../apache/fluo/api/client/SnapshotBase.java|  43 +++-
 .../fluo/api/client/scanner/CellScanner.java|  25 ++
 .../fluo/api/client/scanner/ColumnScanner.java  |  30 +++
 .../fluo/api/client/scanner/RowScanner.java |  23 ++
 .../api/client/scanner/RowScannerBuilder.java   |  26 ++
 .../fluo/api/client/scanner/ScannerBuilder.java |  61 +
 .../fluo/api/config/ScannerConfiguration.java   |  98 
 .../org/apache/fluo/api/data/ColumnValue.java   |  76 ++
 .../fluo/api/iterator/ColumnIterator.java   |  31 ---
 .../apache/fluo/api/iterator/RowIterator.java   |  30 ---
 .../apache/fluo/cluster/runner/AppRunner.java   | 107 
 .../apache/fluo/cluster/runner/ScanTest.java|   8 +-
 .../fluo/core/impl/ColumnIteratorImpl.java  |  90 ---
 .../apache/fluo/core/impl/RowIteratorImpl.java  |  77 --
 .../apache/fluo/core/impl/SnapshotScanner.java  | 244 +++
 .../apache/fluo/core/impl/TransactionImpl.java  |  61 +++--
 .../fluo/core/impl/scanner/CellScannerImpl.java |  57 +
 .../core/impl/scanner/ColumnScannerImpl.java|  71 ++
 .../fluo/core/impl/scanner/RowScannerImpl.java  |  50 
 .../core/impl/scanner/ScannerBuilderImpl.java   |  90 +++
 .../fluo/core/log/TracingTransaction.java   |   9 +-
 .../core/config/ScannerConfigurationTest.java   |  92 ---
 .../org/apache/fluo/integration/ITBase.java |  21 +-
 .../org/apache/fluo/integration/ITBaseImpl.java |   1 +
 .../fluo/integration/TestTransaction.java   |   7 +-
 .../apache/fluo/integration/impl/FluoIT.java|  31 +--
 .../apache/fluo/integration/impl/ScannerIT.java | 217 +
 .../fluo/integration/impl/StochasticBankIT.java |  24 +-
 .../integration/impl/WeakNotificationIT.java|  21 +-
 .../apache/fluo/integration/impl/WorkerIT.java  |  17 +-
 .../fluo/mapreduce/FluoEntryInputFormat.java|  45 ++--
 .../fluo/mapreduce/FluoRowInputFormat.java  |  37 +--
 pom.xml |   4 +-
 33 files changed, 1082 insertions(+), 742 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-fluo/blob/23374784/modules/api/src/main/java/org/apache/fluo/api/client/SnapshotBase.java
--
diff --git 
a/modules/api/src/main/java/org/apache/fluo/api/client/SnapshotBase.java 
b/modules/api/src/main/java/org/apache/fluo/api/client/SnapshotBase.java
index 778aa94..79e1cef 100644
--- a/modules/api/src/main/java/org/apache/fluo/api/client/SnapshotBase.java
+++ b/modules/api/src/main/java/org/apache/fluo/api/client/SnapshotBase.java
@@ -19,11 +19,11 @@ import java.util.Collection;
 import java.util.Map;
 import java.util.Set;
 
-import org.apache.fluo.api.config.ScannerConfiguration;
+import org.apache.fluo.api.client.scanner.ScannerBuilder;
 import org.apache.fluo.api.data.Bytes;
 import org.apache.fluo.api.data.Column;
 import org.apache.fluo.api.data.RowColumn;
-import org.apache.fluo.api.iterator.RowIterator;
+import org.apache.fluo.api.data.Span;
 
 /**
  * Allows users to read from a Fluo table at a certain point in time
@@ -57,9 +57,44 @@ public interface SnapshotBase {
   Map> get(Collection rowColumns);
 
   /**
-   * Retrieves a {@link RowIterator} with the given {@link 
ScannerConfiguration}
+   * This method is the starting point for constructing a scanner. Scanners 
can be constructed over
+   * a {@link Span} and/or with a subset of columns. Below is simple example 
of building a scanner.
+   * 
+   * 
+   * {@code
+   *   Transaction tx = ...;
+   *   Span span = Span.exact("row4");
+   *   Column col1 = new Column("fam1","qual1");
+   *   Column col2 = new Column("fam1","qual2");
+   * 
+   *   //create a scanner over row4 fetching columns fam1:qual1 and fam1:qual2
+   *   CellScanner cs = tx.scanner().over(span).fetch(col1,col2).build();
+   *   for(RowColumnValue rcv : cs) {
+   * //do stuff with rcv
+   *   }
+   * }
+   * 
+   *
+   * 
+   * The following example shows how to build a row scanner.
+   *
+   * 
+   * {
+   *   code
+   *   RowScanner rs = tx.scanner().over(span).fetch(col1, 
col2).byRow().build();
+   *   for (ColumnScanner colScanner : rs) {
+   * Bytes row = 

[3/3] incubator-fluo git commit: Merge branch 'fluo-639'

2016-07-15 Thread kturner
Merge branch 'fluo-639'


Project: http://git-wip-us.apache.org/repos/asf/incubator-fluo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fluo/commit/bf15cef6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fluo/tree/bf15cef6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fluo/diff/bf15cef6

Branch: refs/heads/master
Commit: bf15cef613357fe9bf62076a44dd96c4fe4fed54
Parents: add0fd4 2337478
Author: Keith Turner 
Authored: Fri Jul 15 11:27:53 2016 -0400
Committer: Keith Turner 
Committed: Fri Jul 15 11:27:53 2016 -0400

--
 .../apache/fluo/api/client/SnapshotBase.java|  43 +++-
 .../fluo/api/client/scanner/CellScanner.java|  25 ++
 .../fluo/api/client/scanner/ColumnScanner.java  |  30 +++
 .../fluo/api/client/scanner/RowScanner.java |  23 ++
 .../api/client/scanner/RowScannerBuilder.java   |  26 ++
 .../fluo/api/client/scanner/ScannerBuilder.java |  61 +
 .../fluo/api/config/ScannerConfiguration.java   |  98 
 .../org/apache/fluo/api/data/ColumnValue.java   |  76 ++
 .../fluo/api/iterator/ColumnIterator.java   |  31 ---
 .../apache/fluo/api/iterator/RowIterator.java   |  30 ---
 .../apache/fluo/cluster/runner/AppRunner.java   | 107 
 .../apache/fluo/cluster/runner/ScanTest.java|   8 +-
 .../fluo/core/impl/ColumnIteratorImpl.java  |  90 ---
 .../apache/fluo/core/impl/RowIteratorImpl.java  |  77 --
 .../apache/fluo/core/impl/SnapshotScanner.java  | 244 +++
 .../apache/fluo/core/impl/TransactionImpl.java  |  61 +++--
 .../fluo/core/impl/scanner/CellScannerImpl.java |  57 +
 .../core/impl/scanner/ColumnScannerImpl.java|  71 ++
 .../fluo/core/impl/scanner/RowScannerImpl.java  |  50 
 .../core/impl/scanner/ScannerBuilderImpl.java   |  90 +++
 .../fluo/core/log/TracingTransaction.java   |   9 +-
 .../core/config/ScannerConfigurationTest.java   |  92 ---
 .../org/apache/fluo/integration/ITBase.java |  21 +-
 .../org/apache/fluo/integration/ITBaseImpl.java |   1 +
 .../fluo/integration/TestTransaction.java   |   7 +-
 .../apache/fluo/integration/impl/FluoIT.java|  31 +--
 .../apache/fluo/integration/impl/ScannerIT.java | 217 +
 .../fluo/integration/impl/StochasticBankIT.java |  24 +-
 .../integration/impl/WeakNotificationIT.java|  21 +-
 .../apache/fluo/integration/impl/WorkerIT.java  |  17 +-
 .../fluo/mapreduce/FluoEntryInputFormat.java|  45 ++--
 .../fluo/mapreduce/FluoRowInputFormat.java  |  37 +--
 32 files changed, 1080 insertions(+), 740 deletions(-)
--




  1   2   >