You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@s2graph.apache.org by st...@apache.org on 2017/11/19 02:28:48 UTC

[05/23] incubator-s2graph git commit: remove null.

remove null.


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

Branch: refs/heads/master
Commit: cdfa0c3d27d646481955c22f3b389e6cf5980a2a
Parents: 87394b9
Author: DO YUNG YOON <st...@apache.org>
Authored: Fri Nov 3 16:48:34 2017 +0900
Committer: DO YUNG YOON <st...@apache.org>
Committed: Fri Nov 3 16:48:34 2017 +0900

----------------------------------------------------------------------
 .../org/apache/s2graph/core/S2EdgeLike.scala    |  1 +
 .../tall/IndexEdgeDeserializable.scala          | 27 ++++++++++++--------
 .../wide/IndexEdgeDeserializable.scala          | 26 +++++++++++--------
 3 files changed, 34 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-s2graph/blob/cdfa0c3d/s2core/src/main/scala/org/apache/s2graph/core/S2EdgeLike.scala
----------------------------------------------------------------------
diff --git a/s2core/src/main/scala/org/apache/s2graph/core/S2EdgeLike.scala b/s2core/src/main/scala/org/apache/s2graph/core/S2EdgeLike.scala
index bb58554..f823d60 100644
--- a/s2core/src/main/scala/org/apache/s2graph/core/S2EdgeLike.scala
+++ b/s2core/src/main/scala/org/apache/s2graph/core/S2EdgeLike.scala
@@ -48,6 +48,7 @@ trait S2EdgeLike extends Edge with GraphElement {
   lazy val labelName = innerLabel.label
   lazy val direction = GraphUtil.fromDirection(dir)
 
+  def setTgtVertex(v: S2VertexLike): Unit = tgtVertex = v
   def getOp(): Byte = op
   def setOp(newOp: Byte): Unit = op = newOp
   def getVersion(): Long = version

http://git-wip-us.apache.org/repos/asf/incubator-s2graph/blob/cdfa0c3d/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/tall/IndexEdgeDeserializable.scala
----------------------------------------------------------------------
diff --git a/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/tall/IndexEdgeDeserializable.scala b/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/tall/IndexEdgeDeserializable.scala
index 01f268b..8e3fdf3 100644
--- a/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/tall/IndexEdgeDeserializable.scala
+++ b/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/tall/IndexEdgeDeserializable.scala
@@ -62,9 +62,6 @@ class IndexEdgeDeserializable(graph: S2Graph,
          val label = Label.findById(labelWithDir.labelId)
          val schemaVer = label.schemaVersion
          val srcVertex = graph.newVertex(srcVertexId, version)
-         //TODO:
-         val edge = graph.newEdge(srcVertex, null,
-           label, labelWithDir.dir, GraphUtil.defaultOpByte, version, S2Edge.EmptyState)
          var tsVal = version
          val isTallSchema = tallSchemaVersions(label.schemaVersion)
          val isDegree = if (isTallSchema) pos == kv.row.length else kv.qualifier.isEmpty
@@ -74,12 +71,17 @@ class IndexEdgeDeserializable(graph: S2Graph,
            //      val degreeVal = Bytes.toLong(kv.value)
            val degreeVal = bytesToLongFunc(kv.value, 0)
            val tgtVertexId = VertexId(ServiceColumn.Default, InnerVal.withStr("0", schemaVer))
+           val tgtVertex = graph.newVertex(tgtVertexId, version)
+           val edge = graph.newEdge(srcVertex, tgtVertex,
+             label, labelWithDir.dir, GraphUtil.defaultOpByte, version, S2Edge.EmptyState)
 
            edge.propertyInner(LabelMeta.timestamp.name, version, version)
            edge.propertyInner(LabelMeta.degree.name, degreeVal, version)
            edge.tgtVertex = graph.newVertex(tgtVertexId, version)
            edge.setOp(GraphUtil.defaultOpByte)
            edge.setTsInnerValOpt(Option(InnerVal.withLong(tsVal, schemaVer)))
+
+           Option(edge)
          } else {
            // not degree edge
            val (idxPropsRaw, endAt) =
@@ -111,6 +113,10 @@ class IndexEdgeDeserializable(graph: S2Graph,
                else kv.qualifier(kv.qualifier.length - 1)
              }
 
+           val tgtVertex = graph.newVertex(tgtVertexIdRaw, version)
+           val edge = graph.newEdge(srcVertex, tgtVertex,
+             label, labelWithDir.dir, GraphUtil.defaultOpByte, version, S2Edge.EmptyState)
+
            val index = label.indicesMap.getOrElse(labelIdxSeq, throw new RuntimeException(s"invalid index seq: ${label.id.get}, ${labelIdxSeq}"))
            /* process indexProps */
            val size = idxPropsRaw.length
@@ -141,18 +147,19 @@ class IndexEdgeDeserializable(graph: S2Graph,
            }
 
            /* process tgtVertexId */
-           val tgtVertexId =
-             if (edge.checkProperty(LabelMeta.to.name)) {
-               val vId = edge.property(LabelMeta.to.name).asInstanceOf[S2Property[_]].innerValWithTs
-               TargetVertexId(ServiceColumn.Default, vId.innerVal)
-             } else tgtVertexIdRaw
+
+           if (edge.checkProperty(LabelMeta.to.name)) {
+             val vId = edge.property(LabelMeta.to.name).asInstanceOf[S2Property[_]].innerValWithTs
+             val tgtVertex = graph.newVertex(TargetVertexId(ServiceColumn.Default, vId.innerVal), version)
+             edge.setTgtVertex(tgtVertex)
+           }
 
            edge.propertyInner(LabelMeta.timestamp.name, tsVal, version)
-           edge.tgtVertex = graph.newVertex(tgtVertexId, version)
            edge.setOp(op)
            edge.setTsInnerValOpt(Option(InnerVal.withLong(tsVal, schemaVer)))
+
+           Option(edge)
          }
-         Option(edge)
        }
      } catch {
        case e: Exception =>

http://git-wip-us.apache.org/repos/asf/incubator-s2graph/blob/cdfa0c3d/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/wide/IndexEdgeDeserializable.scala
----------------------------------------------------------------------
diff --git a/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/wide/IndexEdgeDeserializable.scala b/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/wide/IndexEdgeDeserializable.scala
index a7fe8a1..f5d9af9 100644
--- a/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/wide/IndexEdgeDeserializable.scala
+++ b/s2core/src/main/scala/org/apache/s2graph/core/storage/serde/indexedge/wide/IndexEdgeDeserializable.scala
@@ -57,19 +57,22 @@ class IndexEdgeDeserializable(graph: S2Graph,
          val schemaVer = label.schemaVersion
          val srcVertex = graph.newVertex(srcVertexId, version)
          //TODO:
-         val edge = graph.newEdge(srcVertex, null,
-           label, labelWithDir.dir, GraphUtil.defaultOpByte, version, S2Edge.EmptyState)
          var tsVal = version
 
          if (kv.qualifier.isEmpty) {
            val degreeVal = bytesToLongFunc(kv.value, 0)
            val tgtVertexId = VertexId(ServiceColumn.Default, InnerVal.withStr("0", schemaVer))
+           val tgtVertex = graph.newVertex(tgtVertexId, version)
+           val edge = graph.newEdge(srcVertex, tgtVertex,
+             label, labelWithDir.dir, GraphUtil.defaultOpByte, version, S2Edge.EmptyState)
 
            edge.propertyInner(LabelMeta.timestamp.name, version, version)
            edge.propertyInner(LabelMeta.degree.name, degreeVal, version)
            edge.tgtVertex = graph.newVertex(tgtVertexId, version)
            edge.setOp(GraphUtil.defaultOpByte)
            edge.setTsInnerValOpt(Option(InnerVal.withLong(tsVal, schemaVer)))
+
+           Option(edge)
          } else {
            pos = 0
            val (idxPropsRaw, endAt) = bytesToProps(kv.qualifier, pos, schemaVer)
@@ -85,6 +88,10 @@ class IndexEdgeDeserializable(graph: S2Graph,
              if (kv.qualifier.length == pos) GraphUtil.defaultOpByte
              else kv.qualifier(kv.qualifier.length-1)
 
+           val tgtVertex = graph.newVertex(tgtVertexIdRaw, version)
+           val edge = graph.newEdge(srcVertex, tgtVertex,
+             label, labelWithDir.dir, GraphUtil.defaultOpByte, version, S2Edge.EmptyState)
+
            val index = label.indicesMap.getOrElse(labelIdxSeq, throw new RuntimeException(s"invalid index seq: ${label.id.get}, ${labelIdxSeq}"))
 
            /* process indexProps */
@@ -115,19 +122,18 @@ class IndexEdgeDeserializable(graph: S2Graph,
              }
            }
            /* process tgtVertexId */
-           val tgtVertexId =
-             if (edge.checkProperty(LabelMeta.to.name)) {
-               val vId = edge.property(LabelMeta.to.name).asInstanceOf[S2Property[_]].innerValWithTs
-               TargetVertexId(ServiceColumn.Default, vId.innerVal)
-             } else tgtVertexIdRaw
+           if (edge.checkProperty(LabelMeta.to.name)) {
+             val vId = edge.property(LabelMeta.to.name).asInstanceOf[S2Property[_]].innerValWithTs
+             val tgtVertex = graph.newVertex(TargetVertexId(ServiceColumn.Default, vId.innerVal), version)
+             edge.setTgtVertex(tgtVertex)
+           }
 
            edge.propertyInner(LabelMeta.timestamp.name, tsVal, version)
-           edge.tgtVertex = graph.newVertex(tgtVertexId, version)
            edge.setOp(op)
            edge.setTsInnerValOpt(Option(InnerVal.withLong(tsVal, schemaVer)))
-         }
 
-         Option(edge)
+           Option(edge)
+         }
        }
      } catch {
        case e: Exception => None