-
Notifications
You must be signed in to change notification settings - Fork 26
Description
While developing metrics
integration for PR tarantool/crud#244 , I met unexpected hindrances.
For the following configuration,
local DEFAULT_QUANTILES = {
[0.5] = 1e-5,
[0.9] = 1e-5,
[0.99] = 1e-5,
}
local DEFAULT_SUMMARY_PARAMS = {
age_buckets_count = 5,
max_age_time = 60,
}
crud performance test with wrapper that observes execution time of each insert
/select
failed in crucial part of its requests (near 1/5-1/6 of them), dropping in overall rps efficiency at the same time. (There were no errors at usual and no errors when I've collected stats with wrapper to local tables, not computing sophisticated latency.) When I investigated the issue, I found out that some observes spent near 5 second to process without any yields and it was the main reason for timeouts. After lowing my parameters to
local DEFAULT_QUANTILES = {
[0.99] = 1e-2,
}
local DEFAULT_SUMMARY_PARAMS = {
age_buckets_count = 2,
max_age_time = 60,
}
it began to work well (no errors, but rps still dropped to 2-3 times). Lowering only aging parameter to default (no aging) not helped to fix all the issues. Tuning also quantiles tolerance helped out.
@yngvar-antonsson said in personal chat that it may be related to buffer drops on aging.
I think it is worth investigating, maybe as part of the #313