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

Review request for atlas, Apoorv Naik, Ashutosh Mestry, and Madhan Neethiraj.


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


Repository: atlas


Description
-------

Taxonomy was introduced as a tech preview feature earlier, but the following 
challenges in design/implementation make it necessary to replace the current 
implementation with newer features being introduced:
1. Current implementation uses tags to model taxonomy terms, which limits a 
term to be associated to one entity only. Associating with multiple entities 
would require copying of a term, making it difficult to manage.
2. Current implementation uses dot separated naming convention to model 
taxonomy hierarchy. This makes it inefficient to rebuild taxonomy hierarchy.
3. Current implementation uses tinkerpop blueprints API and makes it difficult 
for migration to newer tinkerpop version.
4. Current implementation is tied to tinkerpop2/titan0 version and since this 
is not abstracted; it blocks the introduction of JanusGraph into Atlas
ATLAS-1410 introduces a new Glossary API, which uses entities to model taxonomy 
terms and uses relationships feature to associate terms with entities. Also, 
the new model includes categories, which makes Glossary to be used for wider 
use-cases. Use of relationships to associate terms with entities would also 
allow tag-propagation more naturally.
Given above, I propose to remove current tech-preview implementation of 
taxonomy feature from both server-side and UI in master branch. Once this is 
removed, existing taxonomy terms will be seen as tags along with rest of the 
tags.


Diffs
-----

  addons/models/0000-Area0/0010-base_model.json 41cf916e 
  
authorization/src/main/java/org/apache/atlas/authorize/AtlasResourceTypes.java 
9902685e 
  
authorization/src/main/java/org/apache/atlas/authorize/simple/AtlasAuthorizationUtils.java
 cc42a730 
  
authorization/src/main/java/org/apache/atlas/authorize/simple/PolicyParser.java 
aabac901 
  
authorization/src/test/java/org/apache/atlas/authorize/simple/AtlasAuthorizationUtilsTest.java
 b76a297a 
  catalog/pom.xml 0d13ae47 
  catalog/src/main/java/org/apache/atlas/catalog/AtlasTypeSystem.java 8f9cd1d3 
  catalog/src/main/java/org/apache/atlas/catalog/BaseRequest.java c03d6d09 
  catalog/src/main/java/org/apache/atlas/catalog/BaseResourceProvider.java 
feb9d727 
  catalog/src/main/java/org/apache/atlas/catalog/CollectionRequest.java 
8a6e7fcc 
  catalog/src/main/java/org/apache/atlas/catalog/DefaultDateFormatter.java 
df075059 
  catalog/src/main/java/org/apache/atlas/catalog/DefaultPropertyMapper.java 
6c41881d 
  catalog/src/main/java/org/apache/atlas/catalog/DefaultTypeSystem.java 
888818e4 
  catalog/src/main/java/org/apache/atlas/catalog/EntityResourceProvider.java 
cee102af 
  catalog/src/main/java/org/apache/atlas/catalog/EntityTagResourceProvider.java 
c2a843b5 
  catalog/src/main/java/org/apache/atlas/catalog/InstanceRequest.java 87722291 
  catalog/src/main/java/org/apache/atlas/catalog/JsonSerializer.java a75639f4 
  catalog/src/main/java/org/apache/atlas/catalog/PropertyMapper.java 50ee2757 
  catalog/src/main/java/org/apache/atlas/catalog/PropertyValueFormatter.java 
a42f5287 
  catalog/src/main/java/org/apache/atlas/catalog/Request.java 86da787d 
  catalog/src/main/java/org/apache/atlas/catalog/ResourceComparator.java 
deb2e4c7 
  catalog/src/main/java/org/apache/atlas/catalog/ResourceProvider.java a63309ef 
  catalog/src/main/java/org/apache/atlas/catalog/Result.java 34a81abe 
  catalog/src/main/java/org/apache/atlas/catalog/TaxonomyResourceProvider.java 
b59dcae0 
  catalog/src/main/java/org/apache/atlas/catalog/TermPath.java 32522272 
  catalog/src/main/java/org/apache/atlas/catalog/TermResourceProvider.java 
3202d040 
  catalog/src/main/java/org/apache/atlas/catalog/TermVertexWrapper.java 
14fcca75 
  catalog/src/main/java/org/apache/atlas/catalog/VertexWrapper.java 966a3ae7 
  
catalog/src/main/java/org/apache/atlas/catalog/definition/BaseResourceDefinition.java
 6a67b250 
  
catalog/src/main/java/org/apache/atlas/catalog/definition/EntityResourceDefinition.java
 052a21d3 
  
catalog/src/main/java/org/apache/atlas/catalog/definition/EntityTagResourceDefinition.java
 c5a42135 
  
catalog/src/main/java/org/apache/atlas/catalog/definition/ResourceDefinition.java
 a797f0bd 
  
catalog/src/main/java/org/apache/atlas/catalog/definition/TaxonomyResourceDefinition.java
 434a189f 
  
catalog/src/main/java/org/apache/atlas/catalog/definition/TermResourceDefinition.java
 51ef65a5 
  
catalog/src/main/java/org/apache/atlas/catalog/exception/CatalogException.java 
7bb2f7b8 
  
catalog/src/main/java/org/apache/atlas/catalog/exception/CatalogRuntimeException.java
 51fd7afb 
  
catalog/src/main/java/org/apache/atlas/catalog/exception/InvalidPayloadException.java
 34c5ab59 
  
catalog/src/main/java/org/apache/atlas/catalog/exception/InvalidQueryException.java
 a7abe239 
  
catalog/src/main/java/org/apache/atlas/catalog/exception/ResourceAlreadyExistsException.java
 d7670c1a 
  
catalog/src/main/java/org/apache/atlas/catalog/exception/ResourceNotFoundException.java
 0307137a 
  catalog/src/main/java/org/apache/atlas/catalog/projection/BaseRelation.java 
03f4f501 
  
catalog/src/main/java/org/apache/atlas/catalog/projection/GenericRelation.java 
2cccd817 
  catalog/src/main/java/org/apache/atlas/catalog/projection/Projection.java 
daa1351f 
  
catalog/src/main/java/org/apache/atlas/catalog/projection/ProjectionResult.java 
7b12e2d5 
  catalog/src/main/java/org/apache/atlas/catalog/projection/Relation.java 
b19bc15c 
  
catalog/src/main/java/org/apache/atlas/catalog/projection/RelationProjection.java
 e4356287 
  catalog/src/main/java/org/apache/atlas/catalog/projection/RelationSet.java 
4adf861e 
  catalog/src/main/java/org/apache/atlas/catalog/projection/TagRelation.java 
cdd1ad14 
  catalog/src/main/java/org/apache/atlas/catalog/projection/TraitRelation.java 
d0f75f3e 
  
catalog/src/main/java/org/apache/atlas/catalog/query/AlwaysQueryExpression.java 
d120bc45 
  catalog/src/main/java/org/apache/atlas/catalog/query/AtlasEntityQuery.java 
d6b737c6 
  catalog/src/main/java/org/apache/atlas/catalog/query/AtlasEntityTagQuery.java 
3e301f37 
  catalog/src/main/java/org/apache/atlas/catalog/query/AtlasQuery.java 4930ab09 
  catalog/src/main/java/org/apache/atlas/catalog/query/AtlasTaxonomyQuery.java 
df3e8da5 
  catalog/src/main/java/org/apache/atlas/catalog/query/AtlasTermQuery.java 
f064037a 
  catalog/src/main/java/org/apache/atlas/catalog/query/BaseQuery.java ff48020b 
  catalog/src/main/java/org/apache/atlas/catalog/query/BaseQueryExpression.java 
2364ee53 
  
catalog/src/main/java/org/apache/atlas/catalog/query/BooleanQueryExpression.java
 b4d759a5 
  
catalog/src/main/java/org/apache/atlas/catalog/query/PrefixQueryExpression.java 
6b43667a 
  
catalog/src/main/java/org/apache/atlas/catalog/query/ProjectionQueryExpression.java
 b9158779 
  catalog/src/main/java/org/apache/atlas/catalog/query/QueryExpression.java 
c53b94b2 
  catalog/src/main/java/org/apache/atlas/catalog/query/QueryFactory.java 
a4fd4ad1 
  
catalog/src/main/java/org/apache/atlas/catalog/query/RegexQueryExpression.java 
c28d4d5d 
  catalog/src/main/java/org/apache/atlas/catalog/query/TermQueryExpression.java 
a7908664 
  
catalog/src/main/java/org/apache/atlas/catalog/query/TermRangeQueryExpression.java
 44cfb72e 
  
catalog/src/main/java/org/apache/atlas/catalog/query/WildcardQueryExpression.java
 689891f6 
  catalog/src/test/java/org/apache/atlas/catalog/CollectionRequestTest.java 
a2285462 
  catalog/src/test/java/org/apache/atlas/catalog/DefaultDateFormatterTest.java 
bbc98c59 
  catalog/src/test/java/org/apache/atlas/catalog/DefaultPropertyMapperTest.java 
d37c0416 
  
catalog/src/test/java/org/apache/atlas/catalog/EntityResourceProviderTest.java 
67af4091 
  
catalog/src/test/java/org/apache/atlas/catalog/EntityTagResourceProviderTest.java
 96cb523c 
  catalog/src/test/java/org/apache/atlas/catalog/InstanceRequestTest.java 
d7162967 
  catalog/src/test/java/org/apache/atlas/catalog/JsonSerializerTest.java 
60cc210e 
  catalog/src/test/java/org/apache/atlas/catalog/ResourceComparatorTest.java 
146ca0c3 
  
catalog/src/test/java/org/apache/atlas/catalog/TaxonomyResourceProviderTest.java
 8dfce5e9 
  catalog/src/test/java/org/apache/atlas/catalog/TermResourceProviderTest.java 
7d61579d 
  catalog/src/test/java/org/apache/atlas/catalog/VertexWrapperTest.java 
41d934f0 
  
catalog/src/test/java/org/apache/atlas/catalog/definition/EntityResourceDefinitionTest.java
 5e56e84e 
  
catalog/src/test/java/org/apache/atlas/catalog/definition/EntityTagResourceDefinitionTest.java
 41f50c7d 
  
catalog/src/test/java/org/apache/atlas/catalog/definition/TaxonomyResourceDefinitionTest.java
 1af8d149 
  
catalog/src/test/java/org/apache/atlas/catalog/definition/TermResourceDefinitionTest.java
 b7b23da2 
  
catalog/src/test/java/org/apache/atlas/catalog/projection/TagRelationTest.java 
5a9c875b 
  
catalog/src/test/java/org/apache/atlas/catalog/query/AlwaysQueryExpressionTest.java
 81d70a4f 
  
catalog/src/test/java/org/apache/atlas/catalog/query/AtlasEntityQueryTest.java 
528c83a7 
  catalog/src/test/java/org/apache/atlas/catalog/query/QueryFactoryTest.java 
36cb6dc7 
  distro/src/conf/atlas-application.properties 585a5791 
  distro/src/conf/policy-store.txt c804b8d4 
  pom.xml 3bbfdd9c 
  typesystem/src/test/resources/policy-store.txt 47583c1e 
  webapp/pom.xml bfa79e81 
  webapp/src/main/java/org/apache/atlas/web/resources/AdminResource.java 
82a4d4eb 
  webapp/src/main/java/org/apache/atlas/web/resources/BaseService.java a013494c 
  
webapp/src/main/java/org/apache/atlas/web/resources/CatalogExceptionMapper.java 
4f7da2e9 
  
webapp/src/main/java/org/apache/atlas/web/resources/CatalogRuntimeExceptionMapper.java
 e11d6d1b 
  webapp/src/main/java/org/apache/atlas/web/resources/EntityService.java 
77115d7c 
  webapp/src/main/java/org/apache/atlas/web/resources/TaxonomyService.java 
05b197fc 
  webapp/src/test/java/org/apache/atlas/web/resources/TaxonomyServiceTest.java 
54a9b9a2 
  webapp/src/test/java/org/apache/atlas/web/security/BaseSecurityTest.java 
ad87025d 


Diff: https://reviews.apache.org/r/63120/diff/1/


Testing
-------

mvn clean install -DskipTests build was sucessfull

validation with embedded-hbase-solr profile - inprogress


Thanks,

Sarath Subramanian

Reply via email to