pingcap / pingcap/tiflash

TiFlash compute nodes support dynamic disk sizing.

Open
#10,462 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

component/storage nextgen type/enhancement
Dominant language
C++
Stars
1k
Forks
423
Avg merge
1d 15h
Merged PRs (30d)
24

Description

Enhancement

Currently, under disagg arch TiFlash compute nodes use the config storage.remote.cache.capacity to define the local capacity available for caching S3 files. When storage.remote.cache.capacity is set to 0, local caching of S3 files is disabled.

When deployed in the cloud, TiFlash compute nodes are typically deployed with exclusive disks that is not shared with any other component. In cloud environments, parameters such as EBS disk capacity can be adjusted without restarting the EC2 instance. Therefore, when disk space becomes insufficient, it may be necessary to dynamically expand the EBS volume. In such scenarios, TiFlash compute nodes should be able to adapt to the increased EBS capacity without requiring a restart, thereby utilizing the expanded disk space for larger local cache capacity.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how the storage.remote.cache.capacity configuration controls local S3-file caching for TiFlash compute nodes under disaggregated architecture. The work is done when setting this value to 0 still disables caching, while an expanded cloud disk can be detected and used for greater cache capacity without restarting the node.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.