gerrit/plugins
Saša Živkov 4cb839f169 Update git submodules
* Update plugins/replication from branch 'stable-2.14'
  - Use rescheduleDelay instead of replicationDelay when rescheduling
    
    The replicationDelay was used for two purposes:
    a) initial delay to schedule a replication
    b) delay when rescheduling the replication due to an in-flight push
    
    The replicationDelay could be set to zero, which make sense for the case a) but
    doesn't make sense for the case b). Actually, when replicationDelay is set to
    zero, the case b) will cause an excessive number of retries (over 1K/second) and
    will also fire a replication failed event for each retry. The latter is yet
    another issue and will be addressed in another change.
    
    Introduce a new config parameter rescheduleDelay and use it for the
    case b). Make sure it cannot bet set to a value lower than 3 seconds to
    avoid the same issue.
    
    In order to keep backwards compabitility with using the replicationDelay
    as rescheduleDelay, a plugin init step is added. For each remote section
    which doesn't already define rescheduleDelay, it will set rescheduleDelay
    to the current value of the replicationDelay, unless replicationDelay is
    set to zero. In the latter case it will assume the default value for
    the rescheduleDelay.
    
    Change-Id: Ia78f46460b531b04ee36ec2d5ab4228dba5c0c50
    
  - Fix race condition when scheduling a replication
    
    The state of PushOne object was modified after the operation was scheduled.
    Depending on the delay parameter the PushOne.run() could be called before (when
    the delay is zero or close to zero) or after (longer delay) the current thread
    calls e.addState(ref, state). Thus, the thread executing PushOne.run() may or
    may not see the update of its stateMap. Further, the stateMap is a
    LinkedListMultimap which is not thread safe and the PushOne doesn't synchronize
    access to it.
    
    Change-Id: Ib26a5933a7993a6d2f0501e5daaf06a7892e597f
2017-07-17 23:52:39 +00:00
..
commit-message-length-validator@07b5f220ec Update git submodules 2017-02-22 01:01:24 +00:00
download-commands@8357e942dd Merge "Format all Java files with google-java-format" 2017-02-07 03:31:04 +00:00
hooks@0e4e41a160 Update git submodules 2017-06-22 01:19:38 +00:00
replication@7dd3d90e1c Update git submodules 2017-07-17 23:52:39 +00:00
reviewnotes@7070ce2252 Update git submodules 2017-03-03 08:46:31 +00:00
singleusergroup@570b6e287a Merge "Format all Java files with google-java-format" 2017-02-07 03:31:04 +00:00
BUILD Add CUSTOM_PLUGINS to plugins build 2017-02-28 18:14:01 +09:00
external_plugin_deps.bzl Allow plugins to contribute external workspace deps 2017-01-26 20:39:45 +00:00