This is an automated email from the ASF dual-hosted git repository. madhan pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/atlas.git
The following commit(s) were added to refs/heads/master by this push: new ffa96f7 ATLAS-3065: added type-patch to remove legacy attributes - #2 ffa96f7 is described below commit ffa96f75355466d0daf14f9ebf3e5563ca40f1c6 Author: Madhan Neethiraj <mad...@apache.org> AuthorDate: Tue Mar 5 08:13:32 2019 -0800 ATLAS-3065: added type-patch to remove legacy attributes - #2 --- .../src/main/java/org/apache/atlas/repository/Constants.java | 1 + .../store/graph/v2/AtlasRelationshipDefStoreV2.java | 11 +++++++++-- .../repository/store/graph/v2/AtlasStructDefStoreV2.java | 6 ++++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/common/src/main/java/org/apache/atlas/repository/Constants.java b/common/src/main/java/org/apache/atlas/repository/Constants.java index d677814..6c1e032 100644 --- a/common/src/main/java/org/apache/atlas/repository/Constants.java +++ b/common/src/main/java/org/apache/atlas/repository/Constants.java @@ -70,6 +70,7 @@ public final class Constants { public static final String RELATIONSHIPTYPE_END1_KEY = "endDef1"; public static final String RELATIONSHIPTYPE_END2_KEY = "endDef2"; public static final String RELATIONSHIPTYPE_CATEGORY_KEY = "relationshipCategory"; + public static final String RELATIONSHIPTYPE_LABEL_KEY = "relationshipLabel"; public static final String RELATIONSHIPTYPE_TAG_PROPAGATION_KEY = encodePropertyKey("tagPropagation"); public static final String RELATIONSHIPTYPE_BLOCKED_PROPAGATED_CLASSIFICATIONS_KEY = encodePropertyKey("blockedPropagatedClassifications"); diff --git a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasRelationshipDefStoreV2.java b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasRelationshipDefStoreV2.java index 3b79ee1..af89df2 100644 --- a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasRelationshipDefStoreV2.java +++ b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasRelationshipDefStoreV2.java @@ -450,14 +450,18 @@ public class AtlasRelationshipDefStoreV2 extends AtlasAbstractDefStoreV2<AtlasRe public static void setVertexPropertiesFromRelationshipDef(AtlasRelationshipDef relationshipDef, AtlasVertex vertex) { vertex.setProperty(Constants.RELATIONSHIPTYPE_END1_KEY, AtlasType.toJson(relationshipDef.getEndDef1())); vertex.setProperty(Constants.RELATIONSHIPTYPE_END2_KEY, AtlasType.toJson(relationshipDef.getEndDef2())); + // default the relationship category to association if it has not been specified. String relationshipCategory = RelationshipCategory.ASSOCIATION.name(); if (relationshipDef.getRelationshipCategory()!=null) { relationshipCategory =relationshipDef.getRelationshipCategory().name(); } + // Update RelationshipCategory vertex.setProperty(Constants.RELATIONSHIPTYPE_CATEGORY_KEY, relationshipCategory); + vertex.setProperty(Constants.RELATIONSHIPTYPE_LABEL_KEY, relationshipDef.getRelationshipLabel()); + if (relationshipDef.getPropagateTags() == null) { vertex.setProperty(Constants.RELATIONSHIPTYPE_TAG_PROPAGATION_KEY, AtlasRelationshipDef.PropagateTags.NONE.name()); } else { @@ -472,8 +476,9 @@ public class AtlasRelationshipDefStoreV2 extends AtlasAbstractDefStoreV2<AtlasRe String name = vertex.getProperty(Constants.TYPENAME_PROPERTY_KEY, String.class); String description = vertex.getProperty(Constants.TYPEDESCRIPTION_PROPERTY_KEY, String.class); String version = vertex.getProperty(Constants.TYPEVERSION_PROPERTY_KEY, String.class); - String end1Str = vertex.getProperty(Constants.RELATIONSHIPTYPE_END1_KEY, String.class); - String end2Str = vertex.getProperty(Constants.RELATIONSHIPTYPE_END2_KEY, String.class); + String label = vertex.getProperty(Constants.RELATIONSHIPTYPE_LABEL_KEY, String.class); + String end1Str = vertex.getProperty(Constants.RELATIONSHIPTYPE_END1_KEY, String.class); + String end2Str = vertex.getProperty(Constants.RELATIONSHIPTYPE_END2_KEY, String.class); String relationStr = vertex.getProperty(Constants.RELATIONSHIPTYPE_CATEGORY_KEY, String.class); String propagateStr = vertex.getProperty(Constants.RELATIONSHIPTYPE_TAG_PROPAGATION_KEY, String.class); @@ -499,6 +504,8 @@ public class AtlasRelationshipDefStoreV2 extends AtlasAbstractDefStoreV2<AtlasRe ret = new AtlasRelationshipDef(name, description, version, relationshipCategory, propagateTags, endDef1, endDef2); + ret.setRelationshipLabel(label); + // add in the attributes AtlasStructDefStoreV2.toStructDef(vertex, ret, typeDefStore); } diff --git a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasStructDefStoreV2.java b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasStructDefStoreV2.java index d67468e..8110cc6 100644 --- a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasStructDefStoreV2.java +++ b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasStructDefStoreV2.java @@ -477,6 +477,12 @@ public class AtlasStructDefStoreV2 extends AtlasAbstractDefStoreV2<AtlasStructDe String encodedAttrPropertyKey = AtlasGraphUtilsV2.encodePropertyKey(attrPropertyKey); String attrJson = vertex.getProperty(encodedAttrPropertyKey, String.class); + if (StringUtils.isEmpty(attrJson)) { + LOG.warn("attribute not found {}.{}. Ignoring..", structDef.getName(), attrName); + + continue; + } + attributeDefs.add(toAttributeDefFromJson(structDef, AtlasType.fromJson(attrJson, Map.class), typeDefStore)); } }