os.writev() behaviour unpredictable when hitting file system full (28)
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- Python
- Estrelas
- 77.2k
- Forks
- 36k
- Merge médio
- 1d 9h
- PRs com merge (30d)
- 558
Descrição
Bug report
os.writev() has an unpredictable behaviour when writing on a file system that becomes full:
For example:
try:
fd=os.open(file, os.O_WRONLY|os.O_CREAT|os.O_APPEND)
result = os.writev(fd,iovtable[0:MAXIOV])
except OSError as e:
...
# at this point result might return some bytes written (not necessarly corresponding to iov lengths, or even not be defined at all.
Your environment
centos 7.
Python 3.9 (but probably the same on 3.11)
This can easily be worked around by specifying in the documentation that os.writev() returns the actual number of bytes written in case of success, but the contents of the return value are unpredicatbale in case of errors.
Guia de contribuição
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.
Direção de pesquisa
Comece pela documentação de os.writev() e revise como o valor de retorno e o comportamento de OSError são descritos atualmente. Compare essa redação com o caso relatado de um sistema de arquivos cheio; considera-se concluído quando a documentação declarar claramente com o que os chamadores podem contar após um sucesso e após um erro.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- python
- Domínio
- documentation
- Tipo de issue
- Bug
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 38/100