You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by ok...@apache.org on 2015/02/10 21:39:07 UTC

incubator-tinkerpop git commit: ComputerResult is now an interface with DefaultComputerResult existing. Added ComputerResult.close() and TinkerGraph now drops the view. For @dkuppitz. Refs #373

Repository: incubator-tinkerpop
Updated Branches:
  refs/heads/master 941339c6c -> 316cd6420


ComputerResult is now an interface with DefaultComputerResult existing. Added ComputerResult.close() and TinkerGraph now drops the view. For @dkuppitz. Refs #373


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

Branch: refs/heads/master
Commit: 316cd642044f20cbbc74e049747c7e75324f43bc
Parents: 941339c
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Tue Feb 10 13:39:05 2015 -0700
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Tue Feb 10 13:39:05 2015 -0700

----------------------------------------------------------------------
 .../tinkerpop/gremlin/process/Traversal.java    |  2 +-
 .../process/computer/ComputerResult.java        | 33 ++++-------
 .../gremlin/process/computer/GraphComputer.java |  2 +-
 .../gremlin/process/computer/MapReduce.java     |  2 +-
 .../traversal/step/map/ComputerResultStep.java  |  2 +-
 .../computer/util/DefaultComputerResult.java    | 60 ++++++++++++++++++++
 .../gremlin/structure/util/StringFactory.java   |  5 ++
 .../groovy/engine/GroovyTraversalScript.java    |  2 +-
 .../ranking/PageRankVertexProgramTest.java      |  1 +
 .../groovy/plugin/HadoopRemoteAcceptor.java     |  2 +-
 .../computer/giraph/GiraphGraphComputer.java    |  3 +-
 .../process/computer/TinkerComputerResult.java  | 40 +++++++++++++
 .../process/computer/TinkerGraphComputer.java   |  2 +-
 .../tinkergraph/structure/TinkerGraph.java      | 19 +++----
 14 files changed, 135 insertions(+), 40 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/Traversal.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/Traversal.java b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/Traversal.java
index f0c7327..6ec802f 100644
--- a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/Traversal.java
+++ b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/Traversal.java
@@ -73,7 +73,7 @@ public interface Traversal<S, E> extends Iterator<E>, Cloneable {
     /**
      * Submit the traversal to a {@link GraphComputer} for OLAP execution.
      * This method should execute the traversal via {@link TraversalVertexProgram}.
-     * It should then wrap the {@link ComputerResult} in a new {@link Traversal} containing a {@link ComputerResultStep}.
+     * It should then wrap the {@link com.tinkerpop.gremlin.process.computer.util.DefaultComputerResult} in a new {@link Traversal} containing a {@link ComputerResultStep}.
      *
      * @param computer the GraphComputer to execute the traversal on
      * @return a new traversal with the starts being the results of the TraversalVertexProgram

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/ComputerResult.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/ComputerResult.java b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/ComputerResult.java
index f7f7936..ced7022 100644
--- a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/ComputerResult.java
+++ b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/ComputerResult.java
@@ -21,40 +21,31 @@ package com.tinkerpop.gremlin.process.computer;
 import com.tinkerpop.gremlin.structure.Graph;
 
 /**
- * The result of the {@link GraphComputer}'s computation. This is returned in a {@link java.util.concurrent.Future} by GraphComputer.submit().
- * A GraphComputer computation yields two things: an updated view of the computed on {@link Graph} and any computational sideEffects called {@link Memory}.
- *
  * @author Marko A. Rodriguez (http://markorodriguez.com)
  */
-public final class ComputerResult {
-
-    private final Graph graph;
-    private final Memory memory;
-
-    public ComputerResult(final Graph graph, final Memory memory) {
-        this.graph = graph;
-        this.memory = memory;
-    }
+public interface ComputerResult extends AutoCloseable {
 
     /**
      * Get the view of the original {@link Graph} computed on by the GraphComputer.
      *
      * @return The computed graph
      */
-    public Graph graph() {
-        return this.graph;
-    }
+    public Graph graph();
 
     /**
      * Get the computational sideEffects called {@link Memory} of the GraphComputer.
      *
      * @return the computed memory
      */
-    public Memory memory() {
-        return this.memory;
-    }
+    public Memory memory();
+
+    /**
+     * Close the computed {@link GraphComputer} result. The semantics of "close" differ depending on the underlying implementation.
+     * In general, when a {@link ComputerResult} is closed, the computed values are no longer available to the user.
+     *
+     * @throws Exception
+     */
+    @Override
+    public void close() throws Exception;
 
-    public String toString() {
-        return "result[" + this.graph + ',' + this.memory + ']';
-    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/GraphComputer.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/GraphComputer.java b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/GraphComputer.java
index d99b79d..2ad3e6d 100644
--- a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/GraphComputer.java
+++ b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/GraphComputer.java
@@ -73,7 +73,7 @@ public interface GraphComputer {
     /**
      * Submit the {@link VertexProgram} and the set of {@link MapReduce} jobs for execution by the {@link GraphComputer}.
      *
-     * @return a {@link Future} denoting a reference to the asynchronous computation and where to get the {@link ComputerResult} when its is complete.
+     * @return a {@link Future} denoting a reference to the asynchronous computation and where to get the {@link com.tinkerpop.gremlin.process.computer.util.DefaultComputerResult} when its is complete.
      */
     public Future<ComputerResult> submit();
 

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/MapReduce.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/MapReduce.java b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/MapReduce.java
index 14d54c0..b669aa9 100644
--- a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/MapReduce.java
+++ b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/MapReduce.java
@@ -159,7 +159,7 @@ public interface MapReduce<MK, MV, RK, RV, R> extends Cloneable {
     public String getMemoryKey();
 
     /**
-     * The final result can be generated and added to {@link Memory} and accessible via {@link ComputerResult}.
+     * The final result can be generated and added to {@link Memory} and accessible via {@link com.tinkerpop.gremlin.process.computer.util.DefaultComputerResult}.
      * The default simply takes the object from generateFinalResult() and adds it to the Memory given getMemoryKey().
      *
      * @param memory    the memory of the {@link GraphComputer}

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java
index 54b119e..93db393 100644
--- a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java
+++ b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/traversal/step/map/ComputerResultStep.java
@@ -26,9 +26,9 @@ import com.tinkerpop.gremlin.process.computer.Memory;
 import com.tinkerpop.gremlin.process.computer.traversal.TraversalVertexProgram;
 import com.tinkerpop.gremlin.process.computer.traversal.step.sideEffect.mapreduce.TraverserMapReduce;
 import com.tinkerpop.gremlin.process.graph.traversal.step.sideEffect.SideEffectCapStep;
-import com.tinkerpop.gremlin.process.traverser.TraverserRequirement;
 import com.tinkerpop.gremlin.process.traversal.step.AbstractStep;
 import com.tinkerpop.gremlin.process.traversal.util.TraversalHelper;
+import com.tinkerpop.gremlin.process.traverser.TraverserRequirement;
 import com.tinkerpop.gremlin.structure.Graph;
 import com.tinkerpop.gremlin.structure.util.detached.Attachable;
 import com.tinkerpop.gremlin.util.iterator.IteratorUtils;

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/util/DefaultComputerResult.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/util/DefaultComputerResult.java b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/util/DefaultComputerResult.java
new file mode 100644
index 0000000..705d23f
--- /dev/null
+++ b/gremlin-core/src/main/java/com/tinkerpop/gremlin/process/computer/util/DefaultComputerResult.java
@@ -0,0 +1,60 @@
+/*
+ * 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 com.tinkerpop.gremlin.process.computer.util;
+
+import com.tinkerpop.gremlin.process.computer.ComputerResult;
+import com.tinkerpop.gremlin.process.computer.Memory;
+import com.tinkerpop.gremlin.structure.Graph;
+import com.tinkerpop.gremlin.structure.util.StringFactory;
+
+/**
+ * The result of the {@link com.tinkerpop.gremlin.process.computer.GraphComputer}'s computation. This is returned in a {@link java.util.concurrent.Future} by GraphComputer.submit().
+ * A GraphComputer computation yields two things: an updated view of the computed on {@link Graph} and any computational sideEffects called {@link com.tinkerpop.gremlin.process.computer.Memory}.
+ *
+ * @author Marko A. Rodriguez (http://markorodriguez.com)
+ */
+public class DefaultComputerResult implements ComputerResult {
+
+    protected final Graph graph;
+    protected final Memory memory;
+
+    public DefaultComputerResult(final Graph graph, final Memory memory) {
+        this.graph = graph;
+        this.memory = memory;
+    }
+
+    @Override
+    public Graph graph() {
+        return this.graph;
+    }
+
+    @Override
+    public Memory memory() {
+        return this.memory;
+    }
+
+    @Override
+    public void close() {
+    }
+
+    @Override
+    public String toString() {
+        return StringFactory.computeResultString(this);
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-core/src/main/java/com/tinkerpop/gremlin/structure/util/StringFactory.java
----------------------------------------------------------------------
diff --git a/gremlin-core/src/main/java/com/tinkerpop/gremlin/structure/util/StringFactory.java b/gremlin-core/src/main/java/com/tinkerpop/gremlin/structure/util/StringFactory.java
index 2105577..913722d 100644
--- a/gremlin-core/src/main/java/com/tinkerpop/gremlin/structure/util/StringFactory.java
+++ b/gremlin-core/src/main/java/com/tinkerpop/gremlin/structure/util/StringFactory.java
@@ -21,6 +21,7 @@ package com.tinkerpop.gremlin.structure.util;
 import com.tinkerpop.gremlin.process.TraversalSideEffects;
 import com.tinkerpop.gremlin.process.TraversalStrategies;
 import com.tinkerpop.gremlin.process.TraversalStrategy;
+import com.tinkerpop.gremlin.process.computer.ComputerResult;
 import com.tinkerpop.gremlin.process.computer.GraphComputer;
 import com.tinkerpop.gremlin.process.computer.MapReduce;
 import com.tinkerpop.gremlin.process.computer.Memory;
@@ -145,6 +146,10 @@ public class StringFactory {
         return "memory" + L_BRACKET + "size:" + memory.keys().size() + R_BRACKET;
     }
 
+    public static String computeResultString(final ComputerResult computerResult) {
+        return "result" + L_BRACKET + computerResult.graph() + ',' + computerResult.memory() + R_BRACKET;
+    }
+
     public static String graphComputerString(final GraphComputer graphComputer) {
         return graphComputer.getClass().getSimpleName().toLowerCase();
     }

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-groovy/src/main/java/com/tinkerpop/gremlin/groovy/engine/GroovyTraversalScript.java
----------------------------------------------------------------------
diff --git a/gremlin-groovy/src/main/java/com/tinkerpop/gremlin/groovy/engine/GroovyTraversalScript.java b/gremlin-groovy/src/main/java/com/tinkerpop/gremlin/groovy/engine/GroovyTraversalScript.java
index 27a6520..099711c 100644
--- a/gremlin-groovy/src/main/java/com/tinkerpop/gremlin/groovy/engine/GroovyTraversalScript.java
+++ b/gremlin-groovy/src/main/java/com/tinkerpop/gremlin/groovy/engine/GroovyTraversalScript.java
@@ -26,8 +26,8 @@ import com.tinkerpop.gremlin.process.computer.GraphComputer;
 import com.tinkerpop.gremlin.process.computer.traversal.TraversalScript;
 import com.tinkerpop.gremlin.process.computer.traversal.TraversalVertexProgram;
 import com.tinkerpop.gremlin.process.computer.traversal.step.map.ComputerResultStep;
-import com.tinkerpop.gremlin.process.graph.traversal.GraphTraversal;
 import com.tinkerpop.gremlin.process.graph.traversal.DefaultGraphTraversal;
+import com.tinkerpop.gremlin.process.graph.traversal.GraphTraversal;
 import com.tinkerpop.gremlin.structure.Graph;
 import org.apache.commons.configuration.Configuration;
 

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/gremlin-test/src/main/java/com/tinkerpop/gremlin/process/computer/ranking/PageRankVertexProgramTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/com/tinkerpop/gremlin/process/computer/ranking/PageRankVertexProgramTest.java b/gremlin-test/src/main/java/com/tinkerpop/gremlin/process/computer/ranking/PageRankVertexProgramTest.java
index 7bcdf3e..157069f 100644
--- a/gremlin-test/src/main/java/com/tinkerpop/gremlin/process/computer/ranking/PageRankVertexProgramTest.java
+++ b/gremlin-test/src/main/java/com/tinkerpop/gremlin/process/computer/ranking/PageRankVertexProgramTest.java
@@ -21,6 +21,7 @@ package com.tinkerpop.gremlin.process.computer.ranking;
 import com.tinkerpop.gremlin.LoadGraphWith;
 import com.tinkerpop.gremlin.process.AbstractGremlinProcessTest;
 import com.tinkerpop.gremlin.process.computer.ComputerResult;
+import com.tinkerpop.gremlin.process.computer.util.DefaultComputerResult;
 import com.tinkerpop.gremlin.process.computer.ranking.pagerank.PageRankVertexProgram;
 import org.junit.Test;
 

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/groovy/plugin/HadoopRemoteAcceptor.java
----------------------------------------------------------------------
diff --git a/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/groovy/plugin/HadoopRemoteAcceptor.java b/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/groovy/plugin/HadoopRemoteAcceptor.java
index 8661886..c8dd767 100644
--- a/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/groovy/plugin/HadoopRemoteAcceptor.java
+++ b/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/groovy/plugin/HadoopRemoteAcceptor.java
@@ -25,8 +25,8 @@ import com.tinkerpop.gremlin.hadoop.structure.HadoopGraph;
 import com.tinkerpop.gremlin.process.computer.ComputerResult;
 import com.tinkerpop.gremlin.process.computer.traversal.TraversalVertexProgram;
 import com.tinkerpop.gremlin.process.computer.traversal.step.map.ComputerResultStep;
-import com.tinkerpop.gremlin.process.graph.traversal.GraphTraversal;
 import com.tinkerpop.gremlin.process.graph.traversal.DefaultGraphTraversal;
+import com.tinkerpop.gremlin.process.graph.traversal.GraphTraversal;
 import com.tinkerpop.gremlin.structure.Graph;
 import org.apache.commons.configuration.BaseConfiguration;
 import org.apache.commons.configuration.FileConfiguration;

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/process/computer/giraph/GiraphGraphComputer.java
----------------------------------------------------------------------
diff --git a/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/process/computer/giraph/GiraphGraphComputer.java b/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/process/computer/giraph/GiraphGraphComputer.java
index 74540bc..4d65c25 100644
--- a/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/process/computer/giraph/GiraphGraphComputer.java
+++ b/hadoop-gremlin/src/main/java/com/tinkerpop/gremlin/hadoop/process/computer/giraph/GiraphGraphComputer.java
@@ -31,6 +31,7 @@ import com.tinkerpop.gremlin.process.computer.GraphComputer;
 import com.tinkerpop.gremlin.process.computer.MapReduce;
 import com.tinkerpop.gremlin.process.computer.VertexProgram;
 import com.tinkerpop.gremlin.process.computer.util.ComputerDataStrategy;
+import com.tinkerpop.gremlin.process.computer.util.DefaultComputerResult;
 import com.tinkerpop.gremlin.process.computer.util.GraphComputerHelper;
 import com.tinkerpop.gremlin.process.computer.util.MapMemory;
 import com.tinkerpop.gremlin.structure.Graph;
@@ -147,7 +148,7 @@ public class GiraphGraphComputer extends Configured implements GraphComputer, To
             this.memory.setRuntime(System.currentTimeMillis() - startTime);
 
             final Graph outputGraph = HadoopHelper.getOutputGraph(this.hadoopGraph);
-            return new ComputerResult(null == this.vertexProgram ? outputGraph : ComputerDataStrategy.wrapGraph(outputGraph, this.vertexProgram), this.memory.asImmutable());
+            return new DefaultComputerResult(null == this.vertexProgram ? outputGraph : ComputerDataStrategy.wrapGraph(outputGraph, this.vertexProgram), this.memory.asImmutable());
         });
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerComputerResult.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerComputerResult.java b/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerComputerResult.java
new file mode 100644
index 0000000..9dea009
--- /dev/null
+++ b/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerComputerResult.java
@@ -0,0 +1,40 @@
+/*
+ * 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 com.tinkerpop.gremlin.tinkergraph.process.computer;
+
+import com.tinkerpop.gremlin.process.computer.Memory;
+import com.tinkerpop.gremlin.process.computer.util.DefaultComputerResult;
+import com.tinkerpop.gremlin.structure.Graph;
+import com.tinkerpop.gremlin.tinkergraph.structure.TinkerGraph;
+import com.tinkerpop.gremlin.tinkergraph.structure.TinkerHelper;
+
+/**
+ * @author Marko A. Rodriguez (http://markorodriguez.com)
+ */
+public class TinkerComputerResult extends DefaultComputerResult {
+
+    public TinkerComputerResult(final Graph graph, final Memory memory) {
+        super(graph, memory);
+    }
+
+    @Override
+    public void close() {
+        TinkerHelper.dropView((TinkerGraph) this.graph);
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerGraphComputer.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerGraphComputer.java b/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerGraphComputer.java
index 42b6d39..a1e5fbe 100644
--- a/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerGraphComputer.java
+++ b/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/process/computer/TinkerGraphComputer.java
@@ -161,7 +161,7 @@ public class TinkerGraphComputer implements GraphComputer {
             // update runtime and return the newly computed graph
             this.memory.setRuntime(System.currentTimeMillis() - time);
             this.memory.complete();
-            return new ComputerResult(sg, this.memory.asImmutable());
+            return new TinkerComputerResult(sg, this.memory.asImmutable());
         });
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/316cd642/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java
----------------------------------------------------------------------
diff --git a/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java b/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java
index 08495a1..1d58142 100644
--- a/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java
+++ b/tinkergraph-gremlin/src/main/java/com/tinkerpop/gremlin/tinkergraph/structure/TinkerGraph.java
@@ -229,7 +229,8 @@ public class TinkerGraph implements Graph, Graph.Iterators {
 
         static final TinkerGraphFeatures INSTANCE = new TinkerGraphFeatures();
 
-        private TinkerGraphFeatures() {}
+        private TinkerGraphFeatures() {
+        }
 
         @Override
         public GraphFeatures graph() {
@@ -255,7 +256,8 @@ public class TinkerGraph implements Graph, Graph.Iterators {
     public static class TinkerGraphVertexFeatures implements Features.VertexFeatures {
         static final TinkerGraphVertexFeatures INSTANCE = new TinkerGraphVertexFeatures();
 
-        private TinkerGraphVertexFeatures() {}
+        private TinkerGraphVertexFeatures() {
+        }
 
         @Override
         public boolean supportsCustomIds() {
@@ -266,7 +268,8 @@ public class TinkerGraph implements Graph, Graph.Iterators {
     public static class TinkerGraphEdgeFeatures implements Features.EdgeFeatures {
         static final TinkerGraphEdgeFeatures INSTANCE = new TinkerGraphEdgeFeatures();
 
-        private TinkerGraphEdgeFeatures(){}
+        private TinkerGraphEdgeFeatures() {
+        }
 
         @Override
         public boolean supportsCustomIds() {
@@ -277,7 +280,8 @@ public class TinkerGraph implements Graph, Graph.Iterators {
     public static class TinkerGraphGraphFeatures implements Features.GraphFeatures {
         static final TinkerGraphGraphFeatures INSTANCE = new TinkerGraphGraphFeatures();
 
-        private TinkerGraphGraphFeatures() {}
+        private TinkerGraphGraphFeatures() {
+        }
 
         @Override
         public boolean supportsTransactions() {
@@ -349,11 +353,4 @@ public class TinkerGraph implements Graph, Graph.Iterators {
             throw new IllegalArgumentException("Class is not indexable: " + elementClass);
         }
     }
-
-    /**
-     * {@link TinkerGraphComputer} generates a view of the original graph. When the view is no longer needed, it can be dropped.
-     */
-    public void dropGraphView() {
-        this.graphView = null;
-    }
 }