Ping test fails because of Windows time precision
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 42/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- python
- Domínio
- testing-qa
Direção de pesquisa
Comece com o teste de ping em test/suites/test_dml.py por volta das linhas 145-150 e revise PR #213 para entender o contexto do Windows CI. Verifique como o teste mede e faz a asserção do resultado do ping e, em seguida, determine a precisão documentada do Windows e o comportamento de teste necessário para obter um resultado confiável. Está concluído quando o teste de ping não falhar mais por causa da precisão do relógio do Windows e suas expectativas de precisão estiverem documentadas, quando aplicável.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
See https://github.com/tarantool/tarantool-python/pull/213 PR. The issue is as follows: ping test started to fail (in ~70% cases) after I migrated Windows CI from Appveyor to GitHub Actions. As a part of this migration, the test Tarantool instance was changed from an instance started on a remote Linux server to an instance started on the same Windows server under WSL. Thus, request time has shortened and it supposedly caused the ping test to fail.
Python documentation declares that
though the time is always returned as a floating point number, not all systems provide time with a better precision than 1 second
Particularly, this StackOverflow answer argues that
For Linux and Mac precision is +- 1 microsecond or 0.001 milliseconds. Python on Windows uses +- 16 milliseconds precision due to clock implementation problems due to process interrupts.
based on Windows documentation.
Assuming that ping requests between the same server services can easily be under 1 ms, it caused the test to fail.
I see two ways to "solve" this issue:
- Rework the test, document ping return value precision on Windows.
- Rework time measurement to be more precise on Windows.
The second approach is more time-consuming and I'm not sure there are any users that really need this to be fixed. So I think it should be the first one until someone interested in the second one appears.
- Linguagem predominante
- Python
- Estrelas
- 108
- Forks
- 51
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
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 tarantool/tarantool-python
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
tarantool/tarantool-python#325 · 1 comentário ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 48/100
tarantool/tarantool-python#340 ·
-
`load_schema` raceAberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 48/100
tarantool/tarantool-python#333 ·
-
3sp feature teamE
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
tarantool/tarantool-python#309 · 1 comentário ·
-
customer Database API
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 45/100
tarantool/tarantool-python#307 · 1 comentário ·
Todas as issues de tarantool/tarantool-python
Issues semelhantes
-
dependencies feature github_actions good first issue
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
wemake-services/wemake-django-template#3149 ·
Mantenedores costumam responder em até 1 dia
-
[request] vsg/1.1.16Abertaupstream update
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
conan-io/conan-center-index#31142 ·
Mantenedores costumam responder em até 1 dia
-
area:core bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
request-theme
Dificuldade 2/5 Menos de uma hora Facilidade para iniciantes 70/100
LizardByte/ThemerrDB#8877 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
area/install-update comp/gateway P0 sweeper:risk-compatibility type/bug
Dificuldade 2/5 Menos de uma hora Facilidade para iniciantes 72/100
NousResearch/hermes-agent#135997 · 3 comentários ·
Mantenedores costumam responder em até 1 dia