Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

vmm: boot and periodic log rotation copy files on async workers

Aberta
#1,270 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
48/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
rust
Domínio
infrastructure

Direção de pesquisa

Locate App::rotate_oversized_logs and the VM startup rotation path, then trace their interaction with the Tokio maintenance task, fs::copy, and VM lifecycle operations. Keep copytruncate, retention cleanup, and serialized rotation behavior while moving both paths to blocking workers; add regression tests as requested and verify cancellation does not release protection prematurely.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Problem

App::rotate_oversized_logs calls synchronous copytruncate (fs::copy, truncation, retention cleanup) directly from the Tokio maintenance task. The VM startup path also rotates logs synchronously. Large logs, many VMs, or slow storage can occupy async workers and delay unrelated control-plane work.

The default periodic threshold is 4 MB with a 5-second scan interval; files can grow beyond the threshold between scans. Actual latency depends on storage and workload and has not been benchmarked.

Fix

Offload both rotation paths to blocking workers. Keep rotations serialized with each other and VM lifecycle operations, retaining that protection if a caller is cancelled. Preserve copytruncate and retention behavior and add regression tests.

#1263 changes supervisor log flushing; its VMM change is only a comment and does not offload rotation.

Linguagem predominante
Rust
Estrelas
551
Forks
97
Merge médio
1d 8h
PRs com merge (30d)
182

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de Dstack-TEE/dstack

Todas as issues de Dstack-TEE/dstack

Issues semelhantes

Mais issues de Rust

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.