dcapwell commented on code in PR #57:
URL: https://github.com/apache/cassandra-accord/pull/57#discussion_r1302230780
##########
accord-core/src/test/java/accord/burn/BurnTest.java:
##########
@@ -230,37 +237,50 @@ static void burn(RandomSource random, TopologyFactory
topologyFactory, List<Id>
// not used for atomicity, just for encapsulation
AtomicReference<Runnable> onSubmitted = new AtomicReference<>();
- Consumer<Packet> responseSink = packet -> {
- ListResult reply = (ListResult) packet.message;
- if (replies[(int)packet.replyId] != null)
- return;
-
+ Runnable maybeTriggerNextRequest = () -> {
Review Comment:
The issue I faced was that so many txn failed and got delayed to `onDone`
that we stoped enqueuing the next packets. We detected that this happened and
would do `return;` and not start the next packets.
> I think in both version we potentially breach our concurrency
restrictions, as we will enqueue for both the heartbeat and any future response.
I saw this code as limiting the number of packets and not in-flight `Txn`,
so we see a client exception (timeout / fault) and would enqueue the next.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]