It has been observed in scale setup testing that GC Pause on CSC can
go upto 8 seconds. In order to make L3VPN reliably work under
such circumstances, we have updated the lock-wait-times for
subnetroute engine and the vrfengine to 9 seconds via this fix.
Signed-off-by: Nishchya Gupta <nishchyag@altencalsoftlabs.com>
Change-Id: Ib63f2fe205e968e71c1779e12cb2391875f2ff2f
private static final Logger LOG = LoggerFactory.getLogger(NexthopManager.class);
private static final String NEXTHOP_ID_POOL_NAME = "nextHopPointerPool";
private static final long WAIT_TIME_FOR_SYNC_INSTALL = Long.getLong("wait.time.sync.install", 300L);
- private static final long WAIT_TIME_TO_ACQUIRE_LOCK = 3000L;
+ // We set the total wait time for lock to be obtained at 9 seconds since GC pauses can be upto 8 seconds
+ //in scale setups.
+ private static final long WAIT_TIME_TO_ACQUIRE_LOCK = 9000L;
private static final int SELECT_GROUP_WEIGHT = 1;
private static final int RETRY_COUNT = 6;
}
void lockSubnet(String subnetId) {
+ // We set the total wait time for lock to be obtained at 9 seconds since GC pauses can be upto 8 seconds
+ //in scale setups.
TryLockInput input =
- new TryLockInputBuilder().setLockName(subnetId).setTime(3000L).setTimeUnit(TimeUnits.Milliseconds).build();
+ new TryLockInputBuilder().setLockName(subnetId).setTime(9000L).setTimeUnit(TimeUnits.Milliseconds).build();
Future<RpcResult<TryLockOutput>> result = lockManager.tryLock(input);
try {
if (result != null && result.get().isSuccessful()) {