Details
-
Bug
-
Status: Patch Available
-
Minor
-
Resolution: Unresolved
-
1.5.0.1
-
None
Description
In doRollback function putByteCounter permits are released by bytesRemaining. This is wrong for the below cases:
In the doCommit function:
1)
if(!bytesRemaining.tryAcquire(putByteCounter, keepAlive,
TimeUnit.SECONDS))
2)
if(!queueRemaining.tryAcquire(-remainingChange, keepAlive, TimeUnit.SECONDS))
When they throw ChannelException, bytesRemaining should not release any permits.