You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@atlas.apache.org by Ashutosh Mestry <am...@hortonworks.com> on 2018/09/10 20:55:28 UTC

Review Request 68678: Export Process: Incremental: Fetch Modified Entities

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/68678/
-----------------------------------------------------------

Review request for atlas, Madhan Neethiraj and Nixon Rodrigues.


Bugs: ATLAS-2864
    https://issues.apache.org/jira/browse/ATLAS-2864


Repository: atlas


Description
-------

**Approach**
- New class _IncrementalExportEntityProvider_ encapsulates queries specific to the requested database.
- Modified the deep traversal flow.


**CURL**

Incremental with _changeMarker_ set to 0:
```
{
    "itemsToExport": [
        { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
    ],
    "options": {
        "fetchType": "incremental",
        "skipLineage": "true",
        "replicatedTo": "clx",
        "changeMarker": 0
    }
}
```

Incremental with _changeMarker_ set to a value:
```
{
    "itemsToExport": [
        { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
    ],
    "options": {
        "fetchType": "incremental",
        "skipLineage": "true",
        "replicatedTo": "clx",
        "changeMarker": 1536048035652
    }
}
```


Diffs
-----

  intg/src/main/java/org/apache/atlas/model/impexp/AtlasExportRequest.java 106a4a02a 
  repository/src/main/java/org/apache/atlas/repository/impexp/ExportService.java aded67caf 
  repository/src/main/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProvider.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/repository/util/UniqueList.java 9148ce09a 
  repository/src/test/java/org/apache/atlas/repository/impexp/ExportIncrementalQueryTest.java PRE-CREATION 


Diff: https://reviews.apache.org/r/68678/diff/1/


Testing
-------

**Unit tests**
- Additional unit tests to verify this scenario.


**Volume test**

Database: HiveDB, 50 tables, 50 views, 50 CTAS tables, each with 88 columns.
Full export is where _changeMarker_ is set to 0.
Increment export is where some modifications have been done to the database and _changeMarker_ is set to some value.

+-------------+-----------+
| Operation   | Duration  |
+-------------+-----------+
| Full Export |    40 secs|
+-------------+-----------+
| Increment   |     5 secs|
+-------------+-----------+


Thanks,

Ashutosh Mestry


Re: Review Request 68678: Export Process: Incremental: Fetch Modified Entities

Posted by Madhan Neethiraj <ma...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/68678/#review208499
-----------------------------------------------------------




repository/src/main/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProvider.java
Lines 94 (patched)
<https://reviews.apache.org/r/68678/#comment292465>

    Perhaps it will be efficient to retrieve 'vertices' from the query, instead of creating a HashMap for each guid. Also, the vertices retrieved here can help avoid having to retrieve vertex for each guid returned from here.


- Madhan Neethiraj


On Sept. 10, 2018, 8:55 p.m., Ashutosh Mestry wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/68678/
> -----------------------------------------------------------
> 
> (Updated Sept. 10, 2018, 8:55 p.m.)
> 
> 
> Review request for atlas, Madhan Neethiraj and Nixon Rodrigues.
> 
> 
> Bugs: ATLAS-2864
>     https://issues.apache.org/jira/browse/ATLAS-2864
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> **Approach**
> - New class _IncrementalExportEntityProvider_ encapsulates queries specific to the requested database.
> - Modified the deep traversal flow.
> 
> 
> **CURL**
> 
> Incremental with _changeMarker_ set to 0:
> ```
> {
>     "itemsToExport": [
>         { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
>     ],
>     "options": {
>         "fetchType": "incremental",
>         "skipLineage": "true",
>         "replicatedTo": "clx",
>         "changeMarker": 0
>     }
> }
> ```
> 
> Incremental with _changeMarker_ set to a value:
> ```
> {
>     "itemsToExport": [
>         { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
>     ],
>     "options": {
>         "fetchType": "incremental",
>         "skipLineage": "true",
>         "replicatedTo": "clx",
>         "changeMarker": 1536048035652
>     }
> }
> ```
> 
> 
> Diffs
> -----
> 
>   intg/src/main/java/org/apache/atlas/model/impexp/AtlasExportRequest.java 106a4a02a 
>   repository/src/main/java/org/apache/atlas/repository/impexp/ExportService.java aded67caf 
>   repository/src/main/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProvider.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/repository/util/UniqueList.java 9148ce09a 
>   repository/src/test/java/org/apache/atlas/repository/impexp/ExportIncrementalQueryTest.java PRE-CREATION 
> 
> 
> Diff: https://reviews.apache.org/r/68678/diff/1/
> 
> 
> Testing
> -------
> 
> **Unit tests**
> - Additional unit tests to verify this scenario.
> 
> 
> **Volume test**
> 
> Database: HiveDB, 50 tables, 50 views, 50 CTAS tables, each with 88 columns.
> Full export is where _changeMarker_ is set to 0.
> Increment export is where some modifications have been done to the database and _changeMarker_ is set to some value.
> 
> +-------------+-----------+
> | Operation   | Duration  |
> +-------------+-----------+
> | Full Export |    40 secs|
> +-------------+-----------+
> | Increment   |     5 secs|
> +-------------+-----------+
> 
> 
> Thanks,
> 
> Ashutosh Mestry
> 
>


Re: Review Request 68678: Export Process: Incremental: Fetch Modified Entities

Posted by Madhan Neethiraj <ma...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/68678/#review208612
-----------------------------------------------------------


Ship it!




Ship It!

- Madhan Neethiraj


On Sept. 13, 2018, 4:52 a.m., Ashutosh Mestry wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/68678/
> -----------------------------------------------------------
> 
> (Updated Sept. 13, 2018, 4:52 a.m.)
> 
> 
> Review request for atlas, Apoorv Naik, Madhan Neethiraj, Nixon Rodrigues, and Sarath Subramanian.
> 
> 
> Bugs: ATLAS-2864
>     https://issues.apache.org/jira/browse/ATLAS-2864
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> **Approach**
> - New class _IncrementalExportEntityProvider_ encapsulates queries specific to the requested database.
> - Modified the deep traversal flow.
> 
> 
> **CURL**
> 
> Incremental with _changeMarker_ set to 0:
> ```
> {
>     "itemsToExport": [
>         { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
>     ],
>     "options": {
>         "fetchType": "incremental",
>         "skipLineage": "true",
>         "replicatedTo": "clx",
>         "changeMarker": 0
>     }
> }
> ```
> 
> Incremental with _changeMarker_ set to a value:
> ```
> {
>     "itemsToExport": [
>         { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
>     ],
>     "options": {
>         "fetchType": "incremental",
>         "skipLineage": "true",
>         "replicatedTo": "clx",
>         "changeMarker": 1536048035652
>     }
> }
> ```
> 
> 
> Diffs
> -----
> 
>   intg/src/main/java/org/apache/atlas/model/impexp/AtlasExportRequest.java 106a4a02a 
>   repository/src/main/java/org/apache/atlas/repository/impexp/ExportService.java 612549d64 
>   repository/src/main/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProvider.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/repository/util/UniqueList.java 9148ce09a 
>   repository/src/test/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProviderTest.java PRE-CREATION 
>   repository/src/test/resources/json/stocksDB-Entities/export-incremental.json fdd3b018d 
> 
> 
> Diff: https://reviews.apache.org/r/68678/diff/4/
> 
> 
> Testing
> -------
> 
> **Pre-commit build**
> https://builds.apache.org/view/A/view/Atlas/job/PreCommit-ATLAS-Build-Test/658/
> 
> **Unit tests**
> - Additional unit tests to verify this scenario.
> 
> 
> **Volume test**
> 
> Database: HiveDB, 50 tables, 50 views, 50 CTAS tables, each with 88 columns.
> Full export is where _changeMarker_ is set to 0.
> Increment export is where some modifications have been done to the database and _changeMarker_ is set to some value.
> 
> +-------------+-----------+
> | Operation   | Duration  |
> +-------------+-----------+
> | Full Export |    37 secs|
> +-------------+-----------+
> | Increment   |     5 secs|
> +-------------+-----------+
> | Increment   |    10 secs|
> | (25 count)  | .         |
> +-------------+-----------+
> 
> 
> Thanks,
> 
> Ashutosh Mestry
> 
>


Re: Review Request 68678: Export Process: Incremental: Fetch Modified Entities

Posted by Ashutosh Mestry <am...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/68678/
-----------------------------------------------------------

(Updated Sept. 13, 2018, 4:52 a.m.)


Review request for atlas, Apoorv Naik, Madhan Neethiraj, Nixon Rodrigues, and Sarath Subramanian.


Changes
-------

Updates include: 
- Addressed review comments.
- Refactoring.


Bugs: ATLAS-2864
    https://issues.apache.org/jira/browse/ATLAS-2864


Repository: atlas


Description
-------

**Approach**
- New class _IncrementalExportEntityProvider_ encapsulates queries specific to the requested database.
- Modified the deep traversal flow.


**CURL**

Incremental with _changeMarker_ set to 0:
```
{
    "itemsToExport": [
        { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
    ],
    "options": {
        "fetchType": "incremental",
        "skipLineage": "true",
        "replicatedTo": "clx",
        "changeMarker": 0
    }
}
```

Incremental with _changeMarker_ set to a value:
```
{
    "itemsToExport": [
        { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
    ],
    "options": {
        "fetchType": "incremental",
        "skipLineage": "true",
        "replicatedTo": "clx",
        "changeMarker": 1536048035652
    }
}
```


Diffs (updated)
-----

  intg/src/main/java/org/apache/atlas/model/impexp/AtlasExportRequest.java 106a4a02a 
  repository/src/main/java/org/apache/atlas/repository/impexp/ExportService.java 612549d64 
  repository/src/main/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProvider.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/repository/util/UniqueList.java 9148ce09a 
  repository/src/test/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProviderTest.java PRE-CREATION 
  repository/src/test/resources/json/stocksDB-Entities/export-incremental.json fdd3b018d 


Diff: https://reviews.apache.org/r/68678/diff/4/

Changes: https://reviews.apache.org/r/68678/diff/3-4/


Testing
-------

**Pre-commit build**
https://builds.apache.org/view/A/view/Atlas/job/PreCommit-ATLAS-Build-Test/658/

**Unit tests**
- Additional unit tests to verify this scenario.


**Volume test**

Database: HiveDB, 50 tables, 50 views, 50 CTAS tables, each with 88 columns.
Full export is where _changeMarker_ is set to 0.
Increment export is where some modifications have been done to the database and _changeMarker_ is set to some value.

+-------------+-----------+
| Operation   | Duration  |
+-------------+-----------+
| Full Export |    37 secs|
+-------------+-----------+
| Increment   |     5 secs|
+-------------+-----------+
| Increment   |    10 secs|
| (25 count)  | .         |
+-------------+-----------+


Thanks,

Ashutosh Mestry


Re: Review Request 68678: Export Process: Incremental: Fetch Modified Entities

Posted by Ashutosh Mestry <am...@hortonworks.com>.

> On Sept. 12, 2018, 5:19 a.m., Madhan Neethiraj wrote:
> > graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java
> > Lines 244 (patched)
> > <https://reviews.apache.org/r/68678/diff/3/?file=2088302#file2088302line244>
> >
> >     What is the advantage of returning iterator from here, instead of List<AtlasVertex> (line #237)? Here is a reference to such usage:  ClassificationSearchProcessor.filter().

Based on what I have read, iterator brings less data in-memory when compared to List.


- Ashutosh


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/68678/#review208546
-----------------------------------------------------------


On Sept. 11, 2018, 8:07 p.m., Ashutosh Mestry wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/68678/
> -----------------------------------------------------------
> 
> (Updated Sept. 11, 2018, 8:07 p.m.)
> 
> 
> Review request for atlas, Apoorv Naik, Madhan Neethiraj, Nixon Rodrigues, and Sarath Subramanian.
> 
> 
> Bugs: ATLAS-2864
>     https://issues.apache.org/jira/browse/ATLAS-2864
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> **Approach**
> - New class _IncrementalExportEntityProvider_ encapsulates queries specific to the requested database.
> - Modified the deep traversal flow.
> 
> 
> **CURL**
> 
> Incremental with _changeMarker_ set to 0:
> ```
> {
>     "itemsToExport": [
>         { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
>     ],
>     "options": {
>         "fetchType": "incremental",
>         "skipLineage": "true",
>         "replicatedTo": "clx",
>         "changeMarker": 0
>     }
> }
> ```
> 
> Incremental with _changeMarker_ set to a value:
> ```
> {
>     "itemsToExport": [
>         { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
>     ],
>     "options": {
>         "fetchType": "incremental",
>         "skipLineage": "true",
>         "replicatedTo": "clx",
>         "changeMarker": 1536048035652
>     }
> }
> ```
> 
> 
> Diffs
> -----
> 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java dded76f84 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java 2408287bf 
>   graphdb/titan1/src/main/java/org/apache/atlas/repository/graphdb/titan1/Titan1Graph.java 622c90019 
>   intg/src/main/java/org/apache/atlas/model/impexp/AtlasExportRequest.java 106a4a02a 
>   repository/src/main/java/org/apache/atlas/repository/impexp/ExportService.java aded67caf 
>   repository/src/main/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProvider.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/repository/impexp/Iterators.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/repository/util/UniqueList.java 9148ce09a 
>   repository/src/test/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProviderTest.java PRE-CREATION 
>   repository/src/test/java/org/apache/atlas/repository/impexp/IteratorsTest.java PRE-CREATION 
>   repository/src/test/resources/json/stocksDB-Entities/export-incremental.json fdd3b018d 
> 
> 
> Diff: https://reviews.apache.org/r/68678/diff/3/
> 
> 
> Testing
> -------
> 
> **Pre-commit build**
> https://builds.apache.org/view/A/view/Atlas/job/PreCommit-ATLAS-Build-Test/658/
> 
> **Unit tests**
> - Additional unit tests to verify this scenario.
> 
> 
> **Volume test**
> 
> Database: HiveDB, 50 tables, 50 views, 50 CTAS tables, each with 88 columns.
> Full export is where _changeMarker_ is set to 0.
> Increment export is where some modifications have been done to the database and _changeMarker_ is set to some value.
> 
> +-------------+-----------+
> | Operation   | Duration  |
> +-------------+-----------+
> | Full Export |    37 secs|
> +-------------+-----------+
> | Increment   |     5 secs|
> +-------------+-----------+
> | Increment   |    10 secs|
> | (25 count)  | .         |
> +-------------+-----------+
> 
> 
> Thanks,
> 
> Ashutosh Mestry
> 
>


Re: Review Request 68678: Export Process: Incremental: Fetch Modified Entities

Posted by Madhan Neethiraj <ma...@apache.org>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/68678/#review208546
-----------------------------------------------------------




graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java
Lines 244 (patched)
<https://reviews.apache.org/r/68678/#comment292570>

    What is the advantage of returning iterator from here, instead of List<AtlasVertex> (line #237)? Here is a reference to such usage:  ClassificationSearchProcessor.filter().


- Madhan Neethiraj


On Sept. 11, 2018, 8:07 p.m., Ashutosh Mestry wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/68678/
> -----------------------------------------------------------
> 
> (Updated Sept. 11, 2018, 8:07 p.m.)
> 
> 
> Review request for atlas, Apoorv Naik, Madhan Neethiraj, Nixon Rodrigues, and Sarath Subramanian.
> 
> 
> Bugs: ATLAS-2864
>     https://issues.apache.org/jira/browse/ATLAS-2864
> 
> 
> Repository: atlas
> 
> 
> Description
> -------
> 
> **Approach**
> - New class _IncrementalExportEntityProvider_ encapsulates queries specific to the requested database.
> - Modified the deep traversal flow.
> 
> 
> **CURL**
> 
> Incremental with _changeMarker_ set to 0:
> ```
> {
>     "itemsToExport": [
>         { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
>     ],
>     "options": {
>         "fetchType": "incremental",
>         "skipLineage": "true",
>         "replicatedTo": "clx",
>         "changeMarker": 0
>     }
> }
> ```
> 
> Incremental with _changeMarker_ set to a value:
> ```
> {
>     "itemsToExport": [
>         { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
>     ],
>     "options": {
>         "fetchType": "incremental",
>         "skipLineage": "true",
>         "replicatedTo": "clx",
>         "changeMarker": 1536048035652
>     }
> }
> ```
> 
> 
> Diffs
> -----
> 
>   graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java dded76f84 
>   graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java 2408287bf 
>   graphdb/titan1/src/main/java/org/apache/atlas/repository/graphdb/titan1/Titan1Graph.java 622c90019 
>   intg/src/main/java/org/apache/atlas/model/impexp/AtlasExportRequest.java 106a4a02a 
>   repository/src/main/java/org/apache/atlas/repository/impexp/ExportService.java aded67caf 
>   repository/src/main/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProvider.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/repository/impexp/Iterators.java PRE-CREATION 
>   repository/src/main/java/org/apache/atlas/repository/util/UniqueList.java 9148ce09a 
>   repository/src/test/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProviderTest.java PRE-CREATION 
>   repository/src/test/java/org/apache/atlas/repository/impexp/IteratorsTest.java PRE-CREATION 
>   repository/src/test/resources/json/stocksDB-Entities/export-incremental.json fdd3b018d 
> 
> 
> Diff: https://reviews.apache.org/r/68678/diff/3/
> 
> 
> Testing
> -------
> 
> **Pre-commit build**
> https://builds.apache.org/view/A/view/Atlas/job/PreCommit-ATLAS-Build-Test/658/
> 
> **Unit tests**
> - Additional unit tests to verify this scenario.
> 
> 
> **Volume test**
> 
> Database: HiveDB, 50 tables, 50 views, 50 CTAS tables, each with 88 columns.
> Full export is where _changeMarker_ is set to 0.
> Increment export is where some modifications have been done to the database and _changeMarker_ is set to some value.
> 
> +-------------+-----------+
> | Operation   | Duration  |
> +-------------+-----------+
> | Full Export |    37 secs|
> +-------------+-----------+
> | Increment   |     5 secs|
> +-------------+-----------+
> | Increment   |    10 secs|
> | (25 count)  | .         |
> +-------------+-----------+
> 
> 
> Thanks,
> 
> Ashutosh Mestry
> 
>


Re: Review Request 68678: Export Process: Incremental: Fetch Modified Entities

Posted by Ashutosh Mestry <am...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/68678/
-----------------------------------------------------------

(Updated Sept. 11, 2018, 8:07 p.m.)


Review request for atlas, Madhan Neethiraj and Nixon Rodrigues.


Changes
-------

Updates include: Additional optimization to fetch mechanism.


Bugs: ATLAS-2864
    https://issues.apache.org/jira/browse/ATLAS-2864


Repository: atlas


Description
-------

**Approach**
- New class _IncrementalExportEntityProvider_ encapsulates queries specific to the requested database.
- Modified the deep traversal flow.


**CURL**

Incremental with _changeMarker_ set to 0:
```
{
    "itemsToExport": [
        { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
    ],
    "options": {
        "fetchType": "incremental",
        "skipLineage": "true",
        "replicatedTo": "clx",
        "changeMarker": 0
    }
}
```

Incremental with _changeMarker_ set to a value:
```
{
    "itemsToExport": [
        { "typeName": "hive_db", "uniqueAttributes": { "qualifiedName": "largedb@cl1" }}
    ],
    "options": {
        "fetchType": "incremental",
        "skipLineage": "true",
        "replicatedTo": "clx",
        "changeMarker": 1536048035652
    }
}
```


Diffs (updated)
-----

  graphdb/api/src/main/java/org/apache/atlas/repository/graphdb/AtlasGraph.java dded76f84 
  graphdb/titan0/src/main/java/org/apache/atlas/repository/graphdb/titan0/Titan0Graph.java 2408287bf 
  graphdb/titan1/src/main/java/org/apache/atlas/repository/graphdb/titan1/Titan1Graph.java 622c90019 
  intg/src/main/java/org/apache/atlas/model/impexp/AtlasExportRequest.java 106a4a02a 
  repository/src/main/java/org/apache/atlas/repository/impexp/ExportService.java aded67caf 
  repository/src/main/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProvider.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/repository/impexp/Iterators.java PRE-CREATION 
  repository/src/main/java/org/apache/atlas/repository/util/UniqueList.java 9148ce09a 
  repository/src/test/java/org/apache/atlas/repository/impexp/IncrementalExportEntityProviderTest.java PRE-CREATION 
  repository/src/test/java/org/apache/atlas/repository/impexp/IteratorsTest.java PRE-CREATION 
  repository/src/test/resources/json/stocksDB-Entities/export-incremental.json fdd3b018d 


Diff: https://reviews.apache.org/r/68678/diff/3/

Changes: https://reviews.apache.org/r/68678/diff/2-3/


Testing (updated)
-------

**Unit tests**
- Additional unit tests to verify this scenario.


**Volume test**

Database: HiveDB, 50 tables, 50 views, 50 CTAS tables, each with 88 columns.
Full export is where _changeMarker_ is set to 0.
Increment export is where some modifications have been done to the database and _changeMarker_ is set to some value.

+-------------+-----------+
| Operation   | Duration  |
+-------------+-----------+
| Full Export |    37 secs|
+-------------+-----------+
| Increment   |     5 secs|
+-------------+-----------+
| Increment   |    10 secs|
| (25 count)  | .         |
+-------------+-----------+


Thanks,

Ashutosh Mestry