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
The following commit(s) were added to refs/heads/master by this push:
new d727cef ATLAS-3674: ZipFileMigationImporter: Migration status display
fix. Part 2
d727cef is described below
commit d727cef743bf78293c3affed5f003fab3d1b02de
Author: Ashutosh Mestry <[email protected]>
AuthorDate: Mon Mar 30 09:09:43 2020 -0700
ATLAS-3674: ZipFileMigationImporter: Migration status display fix. Part 2
---
.../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 b891684..e4c4e36 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
@@ -101,12 +101,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 {
@@ -184,7 +184,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) {
@@ -194,6 +194,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 fc7d392..e0a4573 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
@@ -71,9 +71,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);
@@ -83,7 +83,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 5f1cd0b..742b4ac 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());
assertNull(dataMigrationStatusService.getByName(ret.getName()));