You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@atlas.apache.org by Jeff Hagelberg <jn...@us.ibm.com> on 2016/05/18 14:56:23 UTC

Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated May 18, 2016, 2:56 p.m.)


Review request for atlas and David Kantor.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer
  implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs
-----

  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 5e2871e9d728f1ce345f6b721ff56075fd539ded 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java cccafc2040560e095f792719e70cd4924a3c6e6d 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml de48c15f332a7468007a263a22db599a6a0f7b5a 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by David Kantor <dk...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/#review134008
-----------------------------------------------------------


Ship it!




Ship It!

- David Kantor


On May 18, 2016, 2:56 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47466/
> -----------------------------------------------------------
> 
> (Updated May 18, 2016, 2:56 p.m.)
> 
> 
> Review request for atlas and David Kantor.
> 
> 
> Bugs: ATLAS-693
>     https://issues.apache.org/jira/browse/ATLAS-693
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction lay
 er implementation that is actually being used is the logic to configure Titan and create a TitanGraph.
> 
> Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).
> 
> 
> Diffs
> -----
> 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
>   graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
>   graphdb/titan0/pom.xml PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
>   graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
>   pom.xml 5e2871e9d728f1ce345f6b721ff56075fd539ded 
>   repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
>   repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
>   repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java cccafc2040560e095f792719e70cd4924a3c6e6d 
>   repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
>   repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
>   repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
>   titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
>   titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
>   webapp/pom.xml de48c15f332a7468007a263a22db599a6a0f7b5a 
> 
> Diff: https://reviews.apache.org/r/47466/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by David Kantor <dk...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/#review145010
-----------------------------------------------------------


Ship it!




Ship It!

- David Kantor


On Aug. 5, 2016, 10:19 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47466/
> -----------------------------------------------------------
> 
> (Updated Aug. 5, 2016, 10:19 p.m.)
> 
> 
> Review request for atlas and David Kantor.
> 
> 
> Bugs: ATLAS-693
>     https://issues.apache.org/jira/browse/ATLAS-693
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  
> 
> - The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  
> 
> - The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.
> 
> - start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.
> 
> - Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).
> - I also included in here the change to allow additional jvm arguments to be passed when running the tests.  This can be used, for example, to attach jprofiler to the jvm running the tests.
> - Rebased on 8/4/2016
> 
> 
> Diffs
> -----
> 
>   .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
>   catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
>   distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
>   distro/src/test/python/scripts/TestMetadata.py f943b8afa5464ce14653912ecc9e2f105402d24b 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
>   graphdb/common/pom.xml PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanGraphQuery.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanQueryFactory.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/TitanGraphQuery.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/AndCondition.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/HasPredicate.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/InPredicate.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/OrCondition.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/QueryPredicate.java PRE-CREATION 
>   graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
>   graphdb/titan0/pom.xml PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/NativeTitan0GraphQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/Titan0GraphQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/AbstractGraphDatabaseTest.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/GraphQueryTest.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
>   graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
>   pom.xml 238449493883307120f6982ac4fcb9c7b17beaa4 
>   repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
>   repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
>   repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
>   repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 81fb76e27019012fada88a70a13b4c5264c236bf 
>   repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
>   repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala ddcc10648d072c3575c46fce1790647e514d0f74 
>   repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
>   src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
>   titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
>   titan/src/main/java/com/thinkaurelius/titan/graphdb/query/graph/GraphCentricQueryBuilder.java  
>   titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
>   titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
>   webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 
> 
> Diff: https://reviews.apache.org/r/47466/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated Aug. 5, 2016, 10:19 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Rebased changes.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  

- The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  

- The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

- start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.

- Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).
- I also included in here the change to allow additional jvm arguments to be passed when running the tests.  This can be used, for example, to attach jprofiler to the jvm running the tests.
- Rebased on 8/4/2016


Diffs (updated)
-----

  .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
  catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  distro/src/test/python/scripts/TestMetadata.py f943b8afa5464ce14653912ecc9e2f105402d24b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/common/pom.xml PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanQueryFactory.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/TitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/AndCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/HasPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/InPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/OrCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/QueryPredicate.java PRE-CREATION 
  graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/NativeTitan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/AbstractGraphDatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/GraphQueryTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 238449493883307120f6982ac4fcb9c7b17beaa4 
  repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 81fb76e27019012fada88a70a13b4c5264c236bf 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala ddcc10648d072c3575c46fce1790647e514d0f74 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/main/java/com/thinkaurelius/titan/graphdb/query/graph/GraphCentricQueryBuilder.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated Aug. 5, 2016, 10:07 p.m.)


Review request for atlas and David Kantor.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  

- The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  

- The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

- start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.

- Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).
- I also included in here the change to allow additional jvm arguments to be passed when running the tests.  This can be used, for example, to attach jprofiler to the jvm running the tests.
- Rebased on 8/4/2016


Diffs (updated)
-----

  .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
  catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  distro/src/test/python/scripts/TestMetadata.py f943b8afa5464ce14653912ecc9e2f105402d24b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/common/pom.xml PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanQueryFactory.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/TitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/AndCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/HasPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/InPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/OrCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/QueryPredicate.java PRE-CREATION 
  graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/NativeTitan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/AbstractGraphDatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/GraphQueryTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 238449493883307120f6982ac4fcb9c7b17beaa4 
  repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 81fb76e27019012fada88a70a13b4c5264c236bf 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala ddcc10648d072c3575c46fce1790647e514d0f74 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/main/java/com/thinkaurelius/titan/graphdb/query/graph/GraphCentricQueryBuilder.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated Aug. 5, 2016, 8:24 p.m.)


Review request for atlas and David Kantor.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  

- The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  

- The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

- start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.

- Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).
- I also included in here the change to allow additional jvm arguments to be passed when running the tests.  This can be used, for example, to attach jprofiler to the jvm running the tests.
- Rebased on 8/4/2016


Diffs (updated)
-----

  .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
  catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  distro/src/test/python/scripts/TestMetadata.py f943b8afa5464ce14653912ecc9e2f105402d24b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/common/pom.xml PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanQueryFactory.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/TitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/AndCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/HasPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/InPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/OrCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/QueryPredicate.java PRE-CREATION 
  graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/NativeTitan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/AbstractGraphDatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/GraphQueryTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 238449493883307120f6982ac4fcb9c7b17beaa4 
  repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 81fb76e27019012fada88a70a13b4c5264c236bf 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala ddcc10648d072c3575c46fce1790647e514d0f74 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/main/java/com/thinkaurelius/titan/graphdb/query/graph/GraphCentricQueryBuilder.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated Aug. 5, 2016, 3:39 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Fixed test failure in distro project.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  

- The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  

- The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

- start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.

- Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).
- I also included in here the change to allow additional jvm arguments to be passed when running the tests.  This can be used, for example, to attach jprofiler to the jvm running the tests.
- Rebased on 8/4/2016


Diffs (updated)
-----

  .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
  catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  distro/src/test/python/scripts/TestMetadata.py f943b8afa5464ce14653912ecc9e2f105402d24b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/common/pom.xml PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanQueryFactory.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/TitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/AndCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/HasPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/InPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/OrCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/QueryPredicate.java PRE-CREATION 
  graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/NativeTitan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/AbstractGraphDatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/GraphQueryTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 238449493883307120f6982ac4fcb9c7b17beaa4 
  repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 81fb76e27019012fada88a70a13b4c5264c236bf 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala ddcc10648d072c3575c46fce1790647e514d0f74 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by David Kantor <dk...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/#review144818
-----------------------------------------------------------


Ship it!




Ship It!

- David Kantor


On Aug. 4, 2016, 6:37 p.m., Jeff Hagelberg wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/47466/
> -----------------------------------------------------------
> 
> (Updated Aug. 4, 2016, 6:37 p.m.)
> 
> 
> Review request for atlas and David Kantor.
> 
> 
> Bugs: ATLAS-693
>     https://issues.apache.org/jira/browse/ATLAS-693
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  
> 
> - The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  
> 
> - The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.
> 
> - start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.
> 
> - Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).
> - I also included in here the change to allow additional jvm arguments to be passed when running the tests.  This can be used, for example, to attach jprofiler to the jvm running the tests.
> - Rebased on 8/4/2016
> 
> 
> Diffs
> -----
> 
>   .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
>   catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
>   distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
>   graphdb/common/pom.xml PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanGraphQuery.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanQueryFactory.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/TitanGraphQuery.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/AndCondition.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/HasPredicate.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/InPredicate.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/OrCondition.java PRE-CREATION 
>   graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/QueryPredicate.java PRE-CREATION 
>   graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
>   graphdb/titan0/pom.xml PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/NativeTitan0GraphQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/Titan0GraphQuery.java PRE-CREATION 
>   graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/AbstractGraphDatabaseTest.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/GraphQueryTest.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
>   graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
>   graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
>   pom.xml 238449493883307120f6982ac4fcb9c7b17beaa4 
>   repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
>   repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
>   repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
>   repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 81fb76e27019012fada88a70a13b4c5264c236bf 
>   repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
>   repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala ddcc10648d072c3575c46fce1790647e514d0f74 
>   repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
>   src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
>   titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
>   titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
>   titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
>   titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
>   webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 
> 
> Diff: https://reviews.apache.org/r/47466/diff/
> 
> 
> Testing
> -------
> 
> Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.
> 
> 
> Thanks,
> 
> Jeff Hagelberg
> 
>


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated Aug. 4, 2016, 6:37 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Merged in latest changes from fork and Atlas master, rebased.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description (updated)
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  

- The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  

- The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

- start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.

- Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).
- I also included in here the change to allow additional jvm arguments to be passed when running the tests.  This can be used, for example, to attach jprofiler to the jvm running the tests.
- Rebased on 8/4/2016


Diffs (updated)
-----

  .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
  catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/common/pom.xml PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/NativeTitanQueryFactory.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/TitanGraphQuery.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/AndCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/HasPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/InPredicate.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/OrCondition.java PRE-CREATION 
  graphdb/common/src/main/java/org/apache/atlas/repository/graphdb/titan/query/expr/QueryPredicate.java PRE-CREATION 
  graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/NativeTitan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/query/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/AbstractGraphDatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/GraphQueryTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 238449493883307120f6982ac4fcb9c7b17beaa4 
  repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 81fb76e27019012fada88a70a13b4c5264c236bf 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala ddcc10648d072c3575c46fce1790647e514d0f74 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated July 21, 2016, 7:47 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Rebase changes


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  

- The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  

- The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

- start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.

- Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
  catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 44eac6262c9e9e0c24f541013c413c8fe2835a2e 
  repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 81fb76e27019012fada88a70a13b4c5264c236bf 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala ddcc10648d072c3575c46fce1790647e514d0f74 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated July 18, 2016, 10:33 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Rebased changes wrt Atlas master, merged in latest changes from graphdb fork.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  

- The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  

- The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

- start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.

- Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  .gitignore 0086a69ba29e82dd826f83170a6cc73648c76de5 
  catalog/pom.xml 5946c10da788871021c997b91e83103e2aa094dc 
  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml ea763c5d458cbae2fe87ca7c68dbcf4927e522f8 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/IteratorToIterableAdapter.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 44eac6262c9e9e0c24f541013c413c8fe2835a2e 
  repository/pom.xml 3d525e0bf34be37e3d5d3fc0d7762ac9e3c91124 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 34864361392e06f94e4b01ccd644a0ba8cc37b21 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 4f531e28173f79d63dc3642f2aedd69df2fa12a6 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml ae7894e2d9a218f1b4a1391e5ca28c7aa06e8b57 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStoreTest.java 7ed636ad931ff0dfb8647a00d3f95413e0d2eaa8 
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml b2cd18c433f992621877f170587160877fd45dd0 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated June 10, 2016, 5:25 p.m.)


Review request for atlas and David Kantor.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description (updated)
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  

- The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  

- The atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

- start_atlas.py was updated to remove atlas-titan from the classpath.  All of the titan-specific classes now live in the uber "atlas-graphdb-titan0" jar.  The pom.xml for that project has special logic to guarantee that the customized titan classes get included in the jar rather than the originals, so it is no longer necessary to force the custom titan classes to be near the front of the classpath.

- Added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs
-----

  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml e13345e81ce73206ec8d800139838bf63ea63534 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java c4c767827014a265471250306f35316a0b4ed67f 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 4f6d0118072380342f5ea302d0aaf7902784849a 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml cce6dd6f073b15732d2aa5d26fd4aed090ddf65d 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated June 10, 2016, 3:48 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Fixed build issue in webapp.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer
  implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  distro/src/bin/atlas_start.py bb6189886fe34e7e4496b521cd5cae62df492e36 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml e13345e81ce73206ec8d800139838bf63ea63534 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java c4c767827014a265471250306f35316a0b4ed67f 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 4f6d0118072380342f5ea302d0aaf7902784849a 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml cce6dd6f073b15732d2aa5d26fd4aed090ddf65d 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated June 9, 2016, 4:27 p.m.)


Review request for atlas and David Kantor.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer
  implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  distro/src/bin/atlas_start.py 1ba38f8683c4274475fd097ff182c5cfa8db1dd4 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml eac95c8526011a3a86de8dd154545abec0f7bcf5 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 15201dd45913539b9b3bd430b46ce6cf30c327ac 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 4f6d0118072380342f5ea302d0aaf7902784849a 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml cce6dd6f073b15732d2aa5d26fd4aed090ddf65d 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated June 9, 2016, 3:48 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Updated to use latest version of abstraction layer.  Fixed checkstyle/RAT issues.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer
  implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphIndex.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasPropertyKey.java PRE-CREATION 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphIndex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0PropertyKey.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseValidationTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml eac95c8526011a3a86de8dd154545abec0f7bcf5 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 15201dd45913539b9b3bd430b46ce6cf30c327ac 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java 4f6d0118072380342f5ea302d0aaf7902784849a 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  src/build/checkstyle-suppressions.xml 0025360552a32ffa0a5aa5696f27921a4752513f 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml cce6dd6f073b15732d2aa5d26fd4aed090ddf65d 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated May 25, 2016, 2:44 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Found more unwanted whitespace in changed files.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer
  implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 6013cdc64a4c04c97d9c6b3e6b4fc10b9debd0ff 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 15201dd45913539b9b3bd430b46ce6cf30c327ac 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java cccafc2040560e095f792719e70cd4924a3c6e6d 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml 5b023ebfbd4f77f80b0ef676e0a160dda6576f5e 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated May 25, 2016, 2:30 p.m.)


Review request for atlas and David Kantor.


Changes
-------

Fixed Checkstyle issues.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer
  implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 6013cdc64a4c04c97d9c6b3e6b4fc10b9debd0ff 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 15201dd45913539b9b3bd430b46ce6cf30c327ac 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java cccafc2040560e095f792719e70cd4924a3c6e6d 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml 5b023ebfbd4f77f80b0ef676e0a160dda6576f5e 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated May 24, 2016, 4:44 p.m.)


Review request for atlas and David Kantor.


Changes
-------

The previous diff accidentally undid the changes that were put in to address the code review comments.  I've added those back in.


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer
  implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 6013cdc64a4c04c97d9c6b3e6b4fc10b9debd0ff 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/RepositoryMetadataModule.java 15201dd45913539b9b3bd430b46ce6cf30c327ac 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java cccafc2040560e095f792719e70cd4924a3c6e6d 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml 5b023ebfbd4f77f80b0ef676e0a160dda6576f5e 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg


Re: Review Request 47466: ATLAS-693: Add titan 0.5.4 implementation of graph database abstraction layer

Posted by Jeff Hagelberg <jn...@us.ibm.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/47466/
-----------------------------------------------------------

(Updated May 24, 2016, 3:01 p.m.)


Review request for atlas and David Kantor.


Changes
-------

rebased with latest Atlas changes


Bugs: ATLAS-693
    https://issues.apache.org/jira/browse/ATLAS-693


Repository: atlas


Description
-------

Adding titan 0.5.4 implementation of abstraction layer under graphdb/titan0.  The original TitanGraphProvider class has been morphed into Titan0Database in this new project.  This class has the logic that configures Titan and loads the graph.  A new TitanGraphProvider has been introduced in atlas-repository that delegates everything to Titan0Database.  Now, the TitanGraph is being initialized using the code in the new abstraction layer implementation.  In addition, the atlas-titan project has been merged into graphdb/titan0.  This consolidates all of the titan 0.5.4 configuration logic into the new project.  All dependencies on atlas-titan have been replaced with dependencies on atlas-graphdb-titan0.  The Atlas war now bundles atlas-graphdb-api and atlas-graphdb-titan0.  At this point, though, Atlas is still not using the abstraction layer classes (AtlasVertex, AtlasEdge, etc) at runtime.  It is still hard-coded to use the Titan 0.5.4 classes.  The only logic in the abstraction layer
  implementation that is actually being used is the logic to configure Titan and create a TitanGraph.

Also added "solr" as a supported key for the solr index.  This is the key that is used for the index in Titan 1.0.0 (which has solr support built-in).  solr5 is still allowed for backward compatibility, but this allows more consistency between the implementations and simplifies the test setup logic in the pom.xmls (we will need to update fewer properties when testing titan 1.0.0).


Diffs (updated)
-----

  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdge.java 71b577b5c2e8aee8fec816b9224672ebc2cad5b3 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasEdgeDirection.java e7da1c9a5075004973ba68b8a36a2c95756e0e62 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasElement.java 3c41693e531eb523f04a5c5781f1f123ab38ef07 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java f312117af9cb6ae8de21d565bfcf3b10d9bdfcc6 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphManagement.java 2776b2242c4469dcae344616ccfe100633a79432 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraphQuery.java f0dca9a28eebd8996d55d71dcc3254cce9cd4098 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasIndexQuery.java 7ee6b2831a7610e7d5b1d36ae69282a9315dc06b 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasSchemaViolationException.java fda83b807f3640c04a660001941376f41be6d9be 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertex.java e027b6962cf27a8c2dfbbf6fcc9683fa19e00ae5 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasVertexQuery.java fd20a6524c4795b4212599c2f4ced69c2bbf14c0 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GraphDatabase.java a608eb27921d4be44e639f773ace818115f39ff2 
  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/GremlinVersion.java e817cba200c6d3c4c593b242cb2317e141bab570 
  graphdb/pom.xml 666fe5a01e55d7b761d391e3ef6172f769488254 
  graphdb/titan0/pom.xml PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/GraphDbObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Database.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseManager.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Edge.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Element.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0GraphQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0IndexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Vertex.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0VertexQuery.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/TitanObjectFactory.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/EdgeToAtlasEdgeFunction.java PRE-CREATION 
  graphdb/titan0/src/main/java/org/apache/atlas/utils/VertexToAtlasVertexFunction.java PRE-CREATION 
  graphdb/titan0/src/test/java/org/apache/atlas/repository/graphdb/titan0/Titan0DatabaseTest.java PRE-CREATION 
  graphdb/titan0/src/test/resources/atlas-application.properties PRE-CREATION 
  pom.xml 6013cdc64a4c04c97d9c6b3e6b4fc10b9debd0ff 
  repository/pom.xml 533e48b8dbf8f1d80903b804ddc7da9818fe6702 
  repository/src/main/java/org/apache/atlas/repository/Constants.java 893f1b64fa5d38c8025e6faf86335864f77d1439 
  repository/src/main/java/org/apache/atlas/repository/graph/GraphHelper.java cccafc2040560e095f792719e70cd4924a3c6e6d 
  repository/src/main/java/org/apache/atlas/repository/graph/TitanGraphProvider.java 2cc1a50e2ea139c3a462c918b94945fff602cf17 
  repository/src/main/scala/org/apache/atlas/query/TypeUtils.scala 5a64c53bdb94174bf5699d9e034960f42450f696 
  repository/src/test/java/org/apache/atlas/repository/graph/TitanGraphProviderTest.java 6fc700823800eaa943a34afecb2c2e6fba50637a 
  titan/pom.xml 09006d9dd5e21aa24f53524aa42a3fcd6f3d9fe6 
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/AdminMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/ConnectionMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseAdmin1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompat1_1.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseCompatLoader.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseKeyColumnValueStore.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseStoreManager.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HBaseTransaction.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HConnection1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable0_98.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/HTable1_0.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/hbase/TableMask.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediator.java  
  titan/src/main/java/com/thinkaurelius/titan/diskstorage/solr/Solr5Index.java  
  titan/src/test/java/com/thinkaurelius/titan/diskstorage/locking/LocalLockMediatorTest.java  
  webapp/pom.xml 5b023ebfbd4f77f80b0ef676e0a160dda6576f5e 

Diff: https://reviews.apache.org/r/47466/diff/


Testing
-------

Ran all atlas unit/integration tests, no regressions found.  Addded tests for new code.


Thanks,

Jeff Hagelberg