[go: nahoru, domu]

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement new procfs stat #2234

Merged
merged 2 commits into from
Sep 26, 2024
Merged

Implement new procfs stat #2234

merged 2 commits into from
Sep 26, 2024

Conversation

EvgeniiMekhanik
Copy link
Contributor

The problem in issue #2220 occurs because
count of max concurrent streams in test
exceeded a lot of times and Tempesta FW prints
warning on each event. printk can hungs for
a long time in console_unlock (more then 20s
!), moreover Tempesta FW hold socket lock all
this time. To solve this problem we change T_WARN
to T_DBG for this event to not print this message
for not debug build and also we impement new procfs stat (streams_reset) - count of streams which were reset by any reason. It can be useful to check why new requests dropped.

Closes #2220

Copy link
Contributor
@const-t const-t left a comment

Choose a reason for hiding this comment

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

The code is good for me, however we really need account every stream reset even that we send as response to reset from client? What is useful about this counter?
Max streams number exceeded is exceptional case and if we have a counter only for this case, looking at this counter we can draw a conclusion that we under the flood or that we has too low max_concurrent_streams for legal clients.

@ttaym
Copy link
Contributor
ttaym commented Sep 6, 2024

I can confirm, that this changes fixes #2220 in release build.

@krizhanovsky krizhanovsky requested review from ai-tmpst and removed request for ttaym September 19, 2024 16:01
Copy link
Contributor
@krizhanovsky krizhanovsky left a comment

Choose a reason for hiding this comment

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

Yeah, I agree that it doesn't make sense to account EVERY stream resets (I guess on a live traffic we'll have LOTS of resets), so let's account only Max streams number exceeded.

Since the original bug is fixed I approve the PR and leave the final review for @ai-tmpst

++hm->rsums[i].total;
break;
}
}
}
Copy link
Contributor

Choose a reason for hiding this comment

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

I'm not sure about our commit rules, but the changes in tfw_inc_global_hm_stats() (replacement spaces by tabs) look unrelated.
Otherwise LGTM.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes fixed. Make in other commit

Change spaces to tabs.
The problem in issue #2220 occurs because
count of max concurrent streams in test
exceeded a lot of times and Tempesta FW prints
warning on each event. `printk` can hungs for
a long time in `console_unlock` (more then 20s
!), moreover Tempesta FW hold socket lock all
this time. To solve this problem we change T_WARN
to T_DBG for this event to not print this message
for not debug build and also we impement new procfs
stat (streams_num_exceeded) - count of streams which
were not created, because count of max concurrent
streams was exceeded.

Closes #2220
@krizhanovsky krizhanovsky merged commit 0323099 into master Sep 26, 2024
1 check was pending
@krizhanovsky krizhanovsky deleted the MekhanikEvgenii/fix-2220 branch September 26, 2024 16:08
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.

BUG on test_failovering_with_unlim_ka_requests run
5 participants