Hi Willy, I prefer to choose the simple one: 1. re-enable the "option abortonclose" option. 2. disable "timeout client-fin" and "timeout server-fin".
That's enough for this test, right? Thanks :-) -- Best Regards BaiYang baiy...@gmail.com http://baiy.cn **** < END OF EMAIL > **** From: Willy Tarreau Date: 2015-11-25 23:46 To: baiyang CC: CyrilBonté; Lukas Tribus; haproxy Subject: Re: Re: CPU 100% when waiting for the client timeout Hi, On Wed, Nov 25, 2015 at 09:31:45PM +0800, baiyang wrote: > Hi > > Ok, I'll try to disable this option anyway to dig up more clues of this > issue. Could you please try the appended patch, or simply disable the client-fin and server-fin timeouts ? What I've seen in the code is stupid and can produce the output you sent me. Basically we enable a write-timeout on the other side when we face a read shutdown. This is stupid because we might very well have already disabled the write timeout because we already closed or we don't have anything to send. In the trace you sent me, we have exactly this case with timeouts enabled on closed sides, which explains why they are ignored. I'd like to make this part more robust in the future but for now we must stop the root cause. Thanks, Willy