Skip to content

Fix dynamic window crash#931

Merged
bazsi merged 4 commits intoaxoflow:mainfrom
MrAnno:fix-dynamic-window-crash
Jan 29, 2026
Merged

Fix dynamic window crash#931
bazsi merged 4 commits intoaxoflow:mainfrom
MrAnno:fix-dynamic-window-crash

Conversation

@MrAnno
Copy link
Contributor

@MrAnno MrAnno commented Jan 28, 2026

No description provided.

@mitzkia
Copy link
Contributor

mitzkia commented Jan 28, 2026

Manually tested. Can not reproduce original crash. Verified from my side

Copy link
Member

@bazsi bazsi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks sane. I don't have a complete understanding on how the dynamic window allocation and release operates, so this approve is more like "I trust @MrAnno as he was behind the original implementation and this looks legit", and since this is a crashing bug, let's get this merged, even if I don't understand the bug and the fix.

@MrAnno
Copy link
Contributor Author

MrAnno commented Jan 28, 2026

I didn't write this part of the code, but the issue here is the following:

The current implementation is not what we originally wanted: we just try to divide the dynamic window between ACTIVE connections fairly. Sometimes it is not possible because a previous connection already used up a big portion of the window, so a reclaim request is made in that case to return the missing window as soon as possible.

This reclaim request needs to be processed before we free the connection (we do that periodically, but that's not enough because the scheduling of that timer is not guaranteed to be executed before the connection closes).

@bazsi bazsi merged commit 1b2545a into axoflow:main Jan 29, 2026
22 checks passed
mitzkia pushed a commit to mitzkia/axosyslog that referenced this pull request Jan 29, 2026
Signed-off-by: László Várady <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants