Library and Archive: opening or saving a small text file takes 1 to 6 seconds

Aberta
#501 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
45/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
rust
Domínio
backend, performance

Direção de pesquisa

Start by profiling library-object reads and writes and the eight sidebar folder-list requests made during each Library window load. Check whether the folder lists are handled one at a time, and review #445 for the related cost of decrypting every file in a folder. Done means small text files open and save about as fast as in Documents, and the visible folder loads before the others.

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

Descrição

The ElastOS User Tester measured this on 0.8.0-alpha.25 (source 92aeea44d) on 28 Oct 2026, three runs each, with a 44-byte .txt file:

  • Library opened the file in Documents in about 1.5 s and saved it in about 0.9 s. Each library-object read or write took about 1 s.
  • Archive took about 6.4 s to make a ZIP of that file and about 4.4 s to open the ZIP.
  • For comparison, Documents saved its own file in about 60 ms.

Each Library window load, including the picker that Archive uses, asks for the lists of eight sidebar folders at the same moment. The last list returned after about 3 s, and an action the person took right after it waited behind them. The tester did not check whether the server answers these lists one at a time.

Expected: a small file opens and saves about as fast as in Documents, and Library loads the folder the person sees before the others. A good first step is to profile library-object and the folder lists. #445 (a folder listing decrypts every file in the folder) may explain part of the time.

The 0.8.0 candidate has no change for this, and the timings were not measured again on it.

Linguagem predominante
Rust
Estrelas
6
Forks
2
Merge médio
1d 3h
PRs com merge (30d)
42

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

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 elastos/elastos-runtime

Todas as issues de elastos/elastos-runtime

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.