BUG-4689: Advertising performance fix II 96/33096/3
authorMilos Fabian <milfabia@cisco.com>
Wed, 20 Jan 2016 12:01:23 +0000 (13:01 +0100)
committerGerrit Code Review <gerrit@opendaylight.org>
Thu, 21 Jan 2016 18:50:33 +0000 (18:50 +0000)
commit095c87da7d565dac2cffa11710e7dd0e4a67c20f
tree0c2cd34036d35ad75f89e40c6712953f1522cfc4
parentaf4b2d2cf37871b0fb86666b589a93f12fbf638a
BUG-4689: Advertising performance fix II

When AdjRibOutListener get a notification with too many changes,
it can fill output buffer with wrtitten Update messages,
without a chance to flush a socket, because the AdjRibOutListener
is blocked when channel is not writable - deadlock situation until a
savior (KA message) will not be send.
Flushing with every write operation is uneffective, hence try to call
the "flush" in a situation when the channel become unwritable.

Change-Id: Ie50b9154d1166d55308c3438c12b9c1b9d3ce19f
Signed-off-by: Milos Fabian <milfabia@cisco.com>
bgp/rib-impl/src/main/java/org/opendaylight/protocol/bgp/rib/impl/ChannelOutputLimiter.java