* Update plugins/replication from fefba17b04224e9346a50f6e66944142f4878179
to 94a465e0989ff8124aca3dca8e200aeb870cc9dd
- Merge "Decouple observable queue implementation from ReplicationQueue"
- Decouple observable queue implementation from ReplicationQueue
Prior to this change, AutoReloadRunnable used to depend on
ReplicationQueue, which was used just to observe the status of the queue
during the run() phase of the reloading.
Decouple reloading of configuration from specific queue implementations
by depending only on a way to observe the queue, rather than the queue
itself.
Incidentally, allow AutoReloadRunnable to be reused by implementations
that use a different queueing systems, or no queuing at all, such
as the pull-replication.
Change-Id: I589c5bf3fb49a53734ba3a991d08db33bc189d3e
- Merge "Move isSingleProjectMatch() to RemoteConfiguration interface"
- Merge "Make persistent task keys stable"
- Merge "Persist tasks before scheduling replication"
- Move isSingleProjectMatch() to RemoteConfiguration interface
The logic used to identify whether a configuration is related to a
single project as opposed to a family of project, is the same across
destination or source targets.
Provide a default isSingleProjectMatch method so that it can be
leveraged by both replication (for DestinationConfiguration) and by
pull-replication (for SourceConfiguration)
Change-Id: I1a366841e77755a1d17cfd9f68fe235a7a099f48
- Make persistent task keys stable
GSON was used to create json as the input for sha1 task keys, however
gson can order the json keys differently anytime. Use the values in a
specific order to create stable keys.
Bug: Issue 11760
Change-Id: I6900b5ddb3ba8ab7b5cf7803ae9dd551b5980a59
- Persist tasks before scheduling replication
Consolidate the replication firing paths and in doing so improve the
replicate-all path to persist events before scheduling them, thus
reducing the chance the task could be lost on server interruption. This
consolidation also has the side effect of adding replicate-all events to
the "beforeStartupEventsQueue" if they somehow happen to get fired
before replication is started.
Change-Id: Iaadbb89c4e5bc2f0eb751d26059868ba9cb7e9d7
Change-Id: I3b9da087264124d3b41224d4d754f4a1c44a566b