Each coverage run leaves ~50 six-byte /tmp/CodeCoverage.* files behind on Linux (18.11.x)
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 65/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- csharp
- Domínio
- testing-qa
Direção de pesquisa
Reproduce the leak with dotnet test --coverage on Linux using the reported .NET 8 or .NET 10 matrix, then inspect the TryDeleteBackingFile cleanup path. Done means repeated coverage runs remove the six-byte /tmp/CodeCoverage.* files while preserving cleanup of the real coverage buffer.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
TL;DR: On Linux, each
dotnet test --coveragerun leaves about 50 six-byte/tmp/CodeCoverage.*files behind in my runs. Versions 18.11.0 and 18.11.2 do this; 18.10.0 left none under the same test configurations. The files are never removed, so they accumulate when tests run repeatedly.
Package: Microsoft.Testing.Extensions.CodeCoverage 18.11.0 and 18.11.2 (the latest at the time of writing)
Runtime: .NET 8 and .NET 10 hosts, Linux x64, xunit.v3 3.2.2 on Microsoft.Testing.Platform
Context: split out of #232. Version 18.11.2 fixed the issue reported there. The measurements are in this comment.
Summary
Each dotnet test --coverage run leaves small files in /tmp that are never removed: 52 on net8.0 and 54 on net10.0 in my runs. They are named /tmp/CodeCoverage.<session>.<guid>, have mode 0600, and are six bytes long, all containing 02 00 00 00 00 00.
TryDeleteBackingFile does remove the real coverage buffer (the 1,633-byte one in this test), so only these small files leak. For comparison, 18.10.0 left none behind under the same test configurations. On a CI runner or developer machine that runs tests repeatedly, they accumulate without bound.
- Linguagem predominante
- C#
- Estrelas
- 126
- Forks
- 17
- Merge médio
- 1h 13min
- PRs com merge (30d)
- 2
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
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de microsoft/codecoverage
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 10/100
microsoft/codecoverage#255 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
microsoft/codecoverage#253 · 1 reação ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 52/100
microsoft/codecoverage#251 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
microsoft/codecoverage#249 · 1 comentário · 1 reação ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
microsoft/codecoverage#220 · 2 comentários ·
Todas as issues de microsoft/codecoverage
Issues semelhantes
-
devtools
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia
-
clawsweeper:fix-shape-clear clawsweeper:needs-maintainer-review clawsweeper:no-new-fix-pr clawsweeper:not-repro-on-main impact:ux-release-blocker issue-rating: 🦪 silver shellfish P0
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
openclaw/openclaw-windows-node#1843 · 1 comentário · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
-
kind:ux size:S type:bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
elsa-workflows/elsa-foundation#3256 ·
Mantenedores costumam responder em até 1 dia
-
[Bug]: Revit selector reads process ids 2000-2099 as years (flaky AgentClientTests.AYearOrAProcessIdSelectsTheHost)Talvez já em andamento @Wurschdhaud assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 83/100
pyrevitlabs/pyRevit#3817 ·
Mantenedores costumam responder em até 1 dia