[
https://issues.apache.org/jira/browse/ATLAS-2251?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16247090#comment-16247090
]
Madhan Neethiraj commented on ATLAS-2251:
-----------------------------------------
This patch removes 'TypeSystem' implementation and updates/removed all
references to TypeSystem. Also, usages of scala/json4s/gson libraries have been
removed. Please note that current implementation of DSL query, using Scala and
TypeSystem, has been removed in this patch. DSL will be implemented using
AtlasTypeRegistry in a subsequent patch shortly.
Please note that following classes have been renamed/relocated. All references
to these classes have been updated for this.
{noformat}
org.apache.atlas.typesystem.Referenceable
==> org.apache.atlas.v1.model.instance.Referenceable
org.apache.atlas.typesystem.Struct
==> org.apache.atlas.v1.model.instance.Struct
org.apache.atlas.typesystem.persistence.Id
==> org.apache.atlas.v1.model.instance.Id
org.apache.atlas.typesystem.persistence.AtlasSystemAttributes
==> org.apache.atlas.v1.model.instance.AtlasSystemAttributes
org.apache.atlas.typesystem.types.AttributeDefinition
==> org.apache.atlas.v1.model.typedef.AttributeDefinition
org.apache.atlas.typesystem.types.HierarchicalTypeDefinition<ClassType>
==> org.apache.atlas.v1.model.typedef.ClassTypeDefinition
org.apache.atlas.typesystem.types.EnumTypeDefinition
==> org.apache.atlas.v1.model.typedef.EnumTypeDefinition
org.apache.atlas.typesystem.types.EnumValue
==> org.apache.atlas.v1.model.typedef.EnumTypeDefinition.EnumValue
org.apache.atlas.typesystem.types.HierarchicalTypeDefinition
==> org.apache.atlas.v1.model.typedef.HierarchicalTypeDefinition
org.apache.atlas.typesystem.types.Multiplicity
==> org.apache.atlas.v1.model.typedef.Multiplicity
org.apache.atlas.typesystem.types.StructTypeDefinition
==> org.apache.atlas.v1.model.typedef.StructTypeDefinition
org.apache.atlas.typesystem.types.HierarchicalTypeDefinition<TraitType>
==> org.apache.atlas.v1.model.typedef.TraitTypeDefinition
org.apache.atlas.typesystem.TypesDef.scala
==> org.apache.atlas.v1.model.typedef.TypesDef
org.apache.atlas.typesystem.types.TypeUtils
==> org.apache.atlas.v1.typesystem.types.utils.TypesUtil
org.apache.atlas.notification.entity.EntityNotification
==> org.apache.atlas.model.notification.EntityNotification
org.apache.atlas.notification.hook.HookNotification.HookNotificationMessage
==> org.apache.atlas.model.notification.HookNotification
org.apache.atlas.notification.AtlasNotificationBaseMessage
==> org.apache.atlas.model.notification.AtlasNotificationBaseMessage
org.apache.atlas.notification.AtlasNotificationMessage
==> org.apache.atlas.model.notification.AtlasNotificationMessage
org.apache.atlas.notification.AtlasNotificationStringMessage
==> org.apache.atlas.model.notification.AtlasNotificationStringMessage
org.apache.atlas.notification.MessageVersion
==> org.apache.atlas.model.notification.MessageVersion
org.apache.atlas.notification.entity.EntityNotificationImpl
==> org.apache.atlas.v1.model.notification.EntityNotificationV1
org.apache.atlas.notification.hook.HookNotification.EntityCreateRequest
==>
org.apache.atlas.v1.model.notification.HookNotificationV1.EntityCreateRequest
org.apache.atlas.notification.hook.HookNotification.EntityDeleteRequest
==>
org.apache.atlas.v1.model.notification.HookNotificationV1.EntityDeleteRequest
org.apache.atlas.notification.hook.HookNotification.EntityPartialUpdateRequest
==>
org.apache.atlas.v1.model.notification.HookNotificationV1.EntityPartialUpdateRequest
org.apache.atlas.notification.hook.HookNotification.EntityUpdateRequest
==>
org.apache.atlas.v1.model.notification.HookNotificationV1.EntityUpdateRequest
org.apache.atlas.notification.MessageDeserializer
==> org.apache.atlas.notification.AtlasNotificationMessageDeserializer
{noformat}
> Remove/replace use of TypeSystem with AtlasTypeRegistry
> -------------------------------------------------------
>
> Key: ATLAS-2251
> URL: https://issues.apache.org/jira/browse/ATLAS-2251
> Project: Atlas
> Issue Type: Task
> Components: atlas-core
> Affects Versions: 1.0.0
> Reporter: Madhan Neethiraj
> Assignee: Madhan Neethiraj
> Priority: Critical
> Fix For: 1.0.0
>
> Attachments: ATLAS-2251-1.patch, ATLAS-2251-3.patch
>
>
> With introduction of V2 APIs in 0.8 release, Atlas core type-system
> implementation moved to use AtlasTypeRegistry (which uses data-structures
> introduced in V2 APIs). However, earlier version equivalent, TypeSystem
> (which uses V1 data-structures), is still being referenced in few places,
> like:
> - V1 REST APIs, to covert between V1 and V2 data-structures
> - notification processing, which uses V1 data-structures
> - DSL query implementation
> - AtlasClient API
> - unit tests
> Having to support legacy TypeSystem causes run time overhead in duplicate
> caching of type-information - in AtlasTypeRegistry and TypeSystem. Removing
> TypeSystem implementation will help eliminate this overhead and also improve
> maintainability of Atlas sources.
> This JIRA is to track removal of TypeSystem implementation and its
> references; where necessary, references should be updated to use
> AtlasTypeRegistry equivalent.
> - it is very critical to continue to support V1 REST APIs and processing of
> current V1 notifications
> - existing unit tests that use V1 data-structures will be removed and will be
> replaced with equivalents that use V2 data-structures
> - AtlasClient in new release will only support V2 data-structures; however,
> older version AtlasClient will continue to work with new version of Atlas
> server
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)