apache / apache/servicecomb-java-chassis
A服务RPC调用B服务找不到可用地址时,导致当前线程上下文被清除,接着再调用C服务时取CSE上下文报空指针异常
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- Java
- Estrelas
- 1.9k
- Forks
- 813
- Merge médio
- 8d 23h
- PRs com merge (30d)
- 1
Descrição
1、当前线程A服务代码中第73行使用RPC方式异步调用B服务:
2、负载均衡没有找到B服务可用的地址:
3、A服务当前线程上下文被清除:
4、A服务当前线程再接着调用C服务时,从上下文中获取参数时报空指针:
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
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 pelo código de A-service na linha 73 e rastreie o tratamento do contexto da thread quando o load balancer não encontra um endereço disponível de B-service. Reproduza a chamada seguinte para C-service e inspecione a busca de contexto mostrada nas capturas de tela; considera-se concluído quando o caminho de falha não causar mais uma exceção de ponteiro nulo durante a chamada subsequente para C-service.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- java
- Domínio
- backend, distributed-systems
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 35/100