apache / apache/servicecomb-java-chassis
ProviderQpsFlowControlHandler不被执行的问题
- Lingua principale
- Java
- Stelle
- 1.9k
- Fork
- 814
- Merge medio
- 8g 23h
- PR unite (30g)
- 1
Descrizione
当请求走到doInvoke时

由于在外部进行了++,导致handlerIndex已经是1了

此时放在handlerList中的首个是ProviderQpsFlowControlHandler

它的首行会判断invocation的hanlerIndex是否大于0,由于handlerIndex++放在入口前,且handlerIndex不能赋值初始值为-1,也没有其他途径修改值,所以进来这里的代码一定是大于0的,导致ProviderQpsFlowControlHandler可能永远不被执行

我在走读代码的时候看到了这么个情况,绞尽脑子没有想到缘由,可能不是bug,而是有什么其他设计,希望能够得到解答,万分感谢!
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Inizia da doInvoke e segui come cambia handlerIndex prima che venga raggiunto ProviderQpsFlowControlHandler. Leggi l’ordine di handlerList e il controllo iniziale di handlerIndex del handler, quindi conferma se il handler viene saltato in questo percorso. Il lavoro è completato quando viene documentato il design previsto oppure viene prodotto un fix mirato con evidenze che il handler venga eseguito correttamente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java
- Ambito
- backend
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100