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

carbonserver: introduce file list cache v2 #470

Merged
merged 1 commit into from
Jun 9, 2022

Conversation

bom-d-van
Copy link
Member

@bom-d-van bom-d-van commented Jun 8, 2022

This commit introduces flc v2, the main purpose is to have better quota support during restart.
Mainly for saving physical and logical size info in the flc.

Users can transparently switch from v1 to v2 and vice versa.

More context on quota friendly: with flc v1, when go-carbon is restarted, it would create a trie index
tree using the logical size as physical size for metrics and this would potentially temporary high
physical size accounting and leads to unnecessary throttling if physical size quota is enabled.

With flc v2, go-carbon would keep physical, logical, data points, and first_seen_at timestamp in the
cache file and use that for rebuilding the trie index after restart. This would avoids temporary incorrect
physical size accounting issues with flcv1.

@bom-d-van bom-d-van force-pushed the carbonserer/quota-friendly-file-list-cache branch from 9da5fe4 to a33bb3e Compare June 8, 2022 10:40
@bom-d-van
Copy link
Member Author

image

@bom-d-van bom-d-van force-pushed the carbonserer/quota-friendly-file-list-cache branch 3 times, most recently from 2d478c2 to fd1f107 Compare June 9, 2022 09:46
This commit introduces flc v2, the main purpose is to have better quota support during restart.
Mainly for saving physical and logical size info in the flc.

Users can transparently switch from v1 to v2 and vice versa.

More context on quota friendly: with flc v1, when go-carbon is restarted, it would create a trie index
tree using the logical size as physical size for metrics and this would potentially temporary high
physical size accounting and leads to unnecessary throttling if physical size quota is enabled.

With flc v2, go-carbon would keep physical, logical, data points, and first_seen_at timestamp in the
cache file and use that for rebuilding the trie index after restart. This would avoids temporary incorrect
physical size accounting issues with flcv1.
@bom-d-van bom-d-van force-pushed the carbonserer/quota-friendly-file-list-cache branch from fd1f107 to 093f6a9 Compare June 9, 2022 09:59
@bom-d-van bom-d-van merged commit 1182c9c into master Jun 9, 2022
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.

1 participant