When performing incremental Export, the existing implementation computes the next increment timestamp by finding the maximum value of exported entities' modificationTimestamp. This may work for majority of cases, however it has a drawback.
Consider a scenario where export is in progress and one of the entities that has already been written to the zip stream is modified by another request, this will be missed from the the subsequent export operation.
- Compute timestamps by enumerating all the requests in progress and finding the earliest request. If no requests in progress, return current timestamp.
- Use the timestamp from step above for the change timestamp in AtlasExportResult.