----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/72452/#review220604 -----------------------------------------------------------
Ship it! Ship It! - Sidharth Mishra On April 30, 2020, 4:04 a.m., Ashutosh Mestry wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/72452/ > ----------------------------------------------------------- > > (Updated April 30, 2020, 4:04 a.m.) > > > Review request for atlas, Madhan Neethiraj, Nikhil Bonte, Nixon Rodrigues, > Sarath Subramanian, and Sidharth Mishra. > > > Bugs: ATLAS-3762 > https://issues.apache.org/jira/browse/ATLAS-3762 > > > Repository: atlas > > > Description > ------- > > **Problem Definition** > Please refer to JIRA for details. > > **Updates** > - Modifed: _AtlasJanusGraph.wrapVertices_ and _AtlasJanusGraph.wrapEdges_ : > Now uses genuine iterators. This reduces number of elements fetched, since > the search is linear. > - New: _AtlasVertex.getEdgeCount_ fetches edge count using iterator returned > from _JanusVertex_. Fetching the count is effecient using stream support. > > > **Metrics** > > This difference exists because earlier even _fromVertex_ did not have any > edges, the search would iterate through all the edges of the _toVertex_ and > return NULL. This condition is detected in the algorithm and used to reduce > the search cycle. > > Before: "getRelationshipEdge":{"count":500,"timeTaken":37048} > After: "getRelationshipEdge":{"count":500,"timeTaken":42} > > > Diffs > ----- > > > graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java > 9406e26ff > > graphdb/janus/src/main/java/org/apache/atlas/repository/graphdb/janus/AtlasJanusGraph.java > eb0206271 > > graphdb/janus/src/main/java/org/apache/atlas/repository/graphdb/janus/AtlasJanusVertex.java > fdc9fd0b5 > repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java > 2b8227a7e > > repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasRelationshipStoreV2.java > d1c1f1255 > > > Diff: https://reviews.apache.org/r/72452/diff/4/ > > > Testing > ------- > > **Volume testing** > High volume testing makes the edge fetching effcient. Cases where incoming > edges was in 1000s and outgoing edges was handful. > > Memory footprint has improved since JanusGrpah caches edges and then expires > it. Fetching fewer edges will reduce number of items in memory. > > **Pre-commit Build** > https://builds.apache.org/view/A/view/Atlas/job/PreCommit-ATLAS-Build-Test/1860/ > > > Thanks, > > Ashutosh Mestry > >
