Ticket #1 (new defect)

Opened 3 years ago

weight_mode=peak returns 509 busy on second request to a mongrel

Reported by: m++ Owned by: gnosek
Priority: major Component: upstream_fair
Keywords: Cc:

Description

Czesc i na zdrowie!

I setup 9 mongrels, each with weight 3:

upstream mongrels {

fair weight_mode=peak no_rr;

server 127.0.0.1:8001 weight=3;
server 127.0.0.1:8002 weight=3;
server 127.0.0.1:8003 weight=3;
server 127.0.0.1:8004 weight=3;
server 127.0.0.1:8005 weight=3;
server 127.0.0.1:8006 weight=3;
server 127.0.0.1:8007 weight=3;
server 127.0.0.1:8008 weight=3;
server 127.0.0.1:8009 weight=3;

}

I can now spawn 8 concurrent requests, and all will return 200 SUCCESS.

If I expand to 9, 10, 11, or more requests, I get intermittent 509 BUSY responses. The more concurrent requests, the more 509.

509 BUSY responses should not be returned in weight_mode=peak until there are num_mongrels*weight (9*3 = 27) concurrent requests.

I noticed that without the "fair" flag, nginx never returns 509 BUSY. Is there a mode in "fair" that will behave this way?

Note: See TracTickets for help on using tickets.