content_gap vs. ack_above_hole

Can somebody remind me what exactly the difference between these two
is (and/or why we have both?).

From a quick look at the code, they both report data being acked

that's not seen, but with slightly different specifics. I'm not sure
what a good way is to describe the one event vs the other.

Robin, writing Broxygen docs. :slight_smile:

I've wondered the same thing for a long time and can't wait to find out. :slight_smile:

  .Seth

Can somebody remind me what exactly the difference between these two
is (and/or why we have both?).

Yeah, my fault :-P. As best as I can tell (from revisiting the code),
content-gap is a superset of ack-above-hole. Content gaps can also occur
in situations where we're not expecting to see ACKs (for example, due to
split routing, or because we're not processing traffic from the receiver).
I think merging the two into a single content_gap event would make sense.

    Vern

content-gap is a superset of ack-above-hole.

(... and to add some confusion, the gap_report event is actually tied
closely to ack_above_hole, not to content_gap.)

processing traffic from the receiver). I think merging the two into a
single content_gap event would make sense.

Ok, something for the todo list.

Robin