Skip to content

Summary performance drops #331

@DifferentialOrange

Description

@DifferentialOrange

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    customerdocumentationImprovements or additions to documentationfeatureA new functionality

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions