This is an automated email from the ASF dual-hosted git repository. amestry pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/atlas.git
commit f467229294baa5550f4101d1e8ea59e82fdf3e3b Author: Ashutosh Mestry <[email protected]> AuthorDate: Mon May 4 15:59:46 2020 -0700 ATLAS-3775: Migration Import: Status display fix. --- .../migration/DataMigrationStatusService.java | 46 ++++++++-------------- .../migration/ZipFileMigrationImporter.java | 2 + .../impexp/DataMigrationStatusServiceTest.java | 1 - 3 files changed, 18 insertions(+), 31 deletions(-) diff --git a/repository/src/main/java/org/apache/atlas/repository/migration/DataMigrationStatusService.java b/repository/src/main/java/org/apache/atlas/repository/migration/DataMigrationStatusService.java index e4c4e36..a22c687 100644 --- a/repository/src/main/java/org/apache/atlas/repository/migration/DataMigrationStatusService.java +++ b/repository/src/main/java/org/apache/atlas/repository/migration/DataMigrationStatusService.java @@ -22,15 +22,12 @@ import org.apache.atlas.model.migration.MigrationImportStatus; import org.apache.atlas.repository.Constants; import org.apache.atlas.repository.graph.AtlasGraphProvider; import org.apache.atlas.repository.graphdb.AtlasGraph; -import org.apache.atlas.repository.graphdb.AtlasIndexQuery; import org.apache.atlas.repository.graphdb.AtlasVertex; import org.apache.atlas.repository.store.graph.v2.AtlasGraphUtilsV2; -import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.Date; -import java.util.Iterator; import static org.apache.atlas.repository.store.graph.v2.AtlasGraphUtilsV2.getEncodedProperty; import static org.apache.atlas.repository.store.graph.v2.AtlasGraphUtilsV2.setEncodedProperty; @@ -47,8 +44,8 @@ public class DataMigrationStatusService { this.migrationStatusVertexManagement = new MigrationStatusVertexManagement(AtlasGraphProvider.getGraphInstance()); } - public DataMigrationStatusService(AtlasGraph atlasGraph) { - this.migrationStatusVertexManagement = new MigrationStatusVertexManagement(atlasGraph); + public DataMigrationStatusService(AtlasGraph graph) { + this.migrationStatusVertexManagement = new MigrationStatusVertexManagement(graph); } @@ -76,13 +73,11 @@ public class DataMigrationStatusService { } public MigrationImportStatus getStatus() { - if (this.status != null && - StringUtils.isEmpty(this.status.getOperationStatus()) && - this.migrationStatusVertexManagement.exists(this.status.getName())) { + if (this.status != null && this.migrationStatusVertexManagement.exists(this.status.getName())) { return getCreate(this.status); - } else { - return this.status; } + + return this.status; } public MigrationImportStatus getByName(String name) { @@ -115,18 +110,18 @@ public class DataMigrationStatusService { public static final String PROPERTY_KEY_POSITION = encodePropertyKey(INTERNAL_PROPERTY_KEY_PREFIX + "migration.position"); public static final String PROPERTY_KEY_STATUS = encodePropertyKey(INTERNAL_PROPERTY_KEY_PREFIX + "migration.status"); - private AtlasGraph atlasGraph; + private AtlasGraph graph; private AtlasVertex vertex; - public MigrationStatusVertexManagement(AtlasGraph atlasGraph) { - this.atlasGraph = atlasGraph; + public MigrationStatusVertexManagement(AtlasGraph graph) { + this.graph = graph; } public MigrationImportStatus createOrUpdate(MigrationImportStatus status) { this.vertex = findByNameInternal(status.getName()); if (this.vertex == null) { - this.vertex = atlasGraph.addVertex(); + this.vertex = graph.addVertex(); LOG.info("MigrationStatusVertexManagement: Vertex created!"); updateVertex(this.vertex, status); } @@ -156,29 +151,20 @@ public class DataMigrationStatusService { public void delete(String name) { try { AtlasVertex vertex = findByNameInternal(name); - atlasGraph.removeVertex(vertex); + graph.removeVertex(vertex); this.vertex = null; } finally { - atlasGraph.commit(); + graph.commit(); } } private AtlasVertex findByNameInternal(String name) { try { - String idxQueryString = String.format("%s\"%s\":\"%s\"", AtlasGraphUtilsV2.getIndexSearchPrefix(), Constants.GUID_PROPERTY_KEY, name); - AtlasIndexQuery idxQuery = atlasGraph.indexQuery(Constants.VERTEX_INDEX, idxQueryString); - Iterator<AtlasIndexQuery.Result<Object, Object>> results = idxQuery.vertices(); - - AtlasIndexQuery.Result<?, ?> qryResult = results.hasNext() ? results.next() : null; - if (qryResult != null) { - return qryResult.getVertex(); - } else { - return null; - } + return AtlasGraphUtilsV2.findByGuid(graph, name); } catch (Exception e) { LOG.error("MigrationStatusVertexManagement.findByNameInternal: Failed!", e); } finally { - atlasGraph.commit(); + graph.commit(); } return null; @@ -190,7 +176,7 @@ public class DataMigrationStatusService { } catch (Exception e) { LOG.warn("Error updating status. Please rely on log messages.", e); } finally { - atlasGraph.commit(); + graph.commit(); } } @@ -200,7 +186,7 @@ public class DataMigrationStatusService { } catch (Exception e) { LOG.warn("Error updating status. Please rely on log messages.", e); } finally { - atlasGraph.commit(); + graph.commit(); } } @@ -219,7 +205,7 @@ public class DataMigrationStatusService { } catch (Exception ex) { LOG.error("Error updating MigrationImportStatus vertex. Status may not be persisted correctly.", ex); } finally { - atlasGraph.commit(); + graph.commit(); } } diff --git a/repository/src/main/java/org/apache/atlas/repository/migration/ZipFileMigrationImporter.java b/repository/src/main/java/org/apache/atlas/repository/migration/ZipFileMigrationImporter.java index f44f2a8..d56261f 100644 --- a/repository/src/main/java/org/apache/atlas/repository/migration/ZipFileMigrationImporter.java +++ b/repository/src/main/java/org/apache/atlas/repository/migration/ZipFileMigrationImporter.java @@ -73,8 +73,10 @@ public class ZipFileMigrationImporter implements Runnable { dataMigrationStatusService.setStatus("DONE"); } catch (IOException e) { LOG.error("Migration Import: IO Error!", e); + dataMigrationStatusService.setStatus("FAIL"); } catch (AtlasBaseException e) { LOG.error("Migration Import: Error!", e); + dataMigrationStatusService.setStatus("FAIL"); } } diff --git a/repository/src/test/java/org/apache/atlas/repository/impexp/DataMigrationStatusServiceTest.java b/repository/src/test/java/org/apache/atlas/repository/impexp/DataMigrationStatusServiceTest.java index 742b4ac..f1dc990 100644 --- a/repository/src/test/java/org/apache/atlas/repository/impexp/DataMigrationStatusServiceTest.java +++ b/repository/src/test/java/org/apache/atlas/repository/impexp/DataMigrationStatusServiceTest.java @@ -68,6 +68,5 @@ public class DataMigrationStatusServiceTest { dataMigrationStatusService.delete(); assertNull(dataMigrationStatusService.getStatus()); - assertNull(dataMigrationStatusService.getByName(ret.getName())); } }
