This is an automated email from the ASF dual-hosted git repository.
madhan pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/atlas.git
The following commit(s) were added to refs/heads/branch-2.0 by this push:
new 50af635 ATLAS-3674: ZipFileMigationImporter: Migration status display
fix. Part 2
50af635 is described below
commit 50af6354bedcc5038efc903641384e9d21a05edb
Author: Ashutosh Mestry <[email protected]>
AuthorDate: Mon Mar 30 09:09:43 2020 -0700
ATLAS-3674: ZipFileMigationImporter: Migration status display fix. Part 2
(cherry picked from commit d727cef743bf78293c3affed5f003fab3d1b02de)
---
.../repository/migration/DataMigrationStatusService.java | 16 +++++++++++++---
.../store/graph/v2/bulkimport/pc/EntityConsumer.java | 6 +++---
.../impexp/DataMigrationStatusServiceTest.java | 9 ++++++++-
3 files changed, 24 insertions(+), 7 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 c0ebb5f..7a6e148 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
@@ -96,12 +96,12 @@ public class DataMigrationStatusService {
public void savePosition(Long position) {
this.status.setCurrentIndex(position);
- this.migrationStatusVertexManagement.updateVertexPartial(this.status);
+
this.migrationStatusVertexManagement.updateVertexPartialPosition(this.status);
}
public void setStatus(String status) {
this.status.setOperationStatus(status);
- this.migrationStatusVertexManagement.updateVertexPartial(this.status);
+
this.migrationStatusVertexManagement.updateVertexPartialStatus(this.status);
}
private static class MigrationStatusVertexManagement {
@@ -170,7 +170,7 @@ public class DataMigrationStatusService {
return null;
}
- public void updateVertexPartial(MigrationImportStatus status) {
+ public void updateVertexPartialPosition(MigrationImportStatus status) {
try {
setEncodedProperty(vertex, PROPERTY_KEY_POSITION,
status.getCurrentIndex());
} catch (Exception e) {
@@ -180,6 +180,16 @@ public class DataMigrationStatusService {
}
}
+ public void updateVertexPartialStatus(MigrationImportStatus status) {
+ try {
+ setEncodedProperty(vertex, PROPERTY_KEY_STATUS,
status.getOperationStatus());
+ } catch (Exception e) {
+ LOG.warn("Error updating status. Please rely on log
messages.", e);
+ } finally {
+ atlasGraph.commit();
+ }
+ }
+
private void updateVertex(AtlasVertex vertex, MigrationImportStatus
status) {
try {
setEncodedProperty(vertex, Constants.GUID_PROPERTY_KEY,
status.getName());
diff --git
a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/bulkimport/pc/EntityConsumer.java
b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/bulkimport/pc/EntityConsumer.java
index 34b0561..b73988f 100644
---
a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/bulkimport/pc/EntityConsumer.java
+++
b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/bulkimport/pc/EntityConsumer.java
@@ -80,9 +80,9 @@ public class EntityConsumer extends
WorkItemConsumer<AtlasEntity.AtlasEntityWith
@Override
protected void processItem(AtlasEntity.AtlasEntityWithExtInfo
entityWithExtInfo) {
- int delta = (MapUtils.isEmpty(entityWithExtInfo.getReferredEntities())
+ int delta = MapUtils.isEmpty(entityWithExtInfo.getReferredEntities())
? 1
- : entityWithExtInfo.getReferredEntities().size()) + 1;
+ : entityWithExtInfo.getReferredEntities().size() + 1;
long currentCount = counter.addAndGet(delta);
currentBatch.addAndGet(delta);
@@ -91,7 +91,7 @@ public class EntityConsumer extends
WorkItemConsumer<AtlasEntity.AtlasEntityWith
processEntity(entityWithExtInfo, currentCount);
attemptCommit();
} catch (Exception e) {
- LOG.info("Data loss: Please re-submit!", e);
+ LOG.info("Invalid entities. Possible data loss: Please correct and
re-submit!", e);
}
}
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 c96d04c..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
@@ -38,7 +38,9 @@ public class DataMigrationStatusServiceTest {
AtlasGraph atlasGraph;
@Test
- public void createUpdateDelete() throws AtlasBaseException {
+ public void createUpdateDelete() {
+ final String STATUS_DONE = "DONE";
+
DataMigrationStatusService dataMigrationStatusService = new
DataMigrationStatusService(atlasGraph);
MigrationImportStatus expected = new
MigrationImportStatus("/tmp/defg.zip");
@@ -59,6 +61,11 @@ public class DataMigrationStatusServiceTest {
assertNotNull(dataMigrationStatusService.getStatus().getCurrentIndex(), "100");
assertNotNull(dataMigrationStatusService.getCreate(expected).getCurrentIndex(),
"100");
+
+ dataMigrationStatusService.setStatus(STATUS_DONE);
+
assertNotNull(dataMigrationStatusService.getCreate(expected).getOperationStatus());
+
assertEquals(dataMigrationStatusService.getCreate(expected).getOperationStatus(),
STATUS_DONE);
+
dataMigrationStatusService.delete();
assertNull(dataMigrationStatusService.getStatus());
}