antirez / disque

Disque is a distributed message broker
BSD 3-Clause "New" or "Revised" License
8.01k stars 538 forks source link

Duplicate consumer when add_job param of repli no equal the cluster node numbers #212

Open runingriver opened 6 years ago

runingriver commented 6 years ago

ENV: cluster has three node of A,B,C Case Step:

  1. add 100 job to A, param: replicate=1, and other param with default. now result: A: info - registered_jobs=100,qlen=100; B:info - registered_jobs=0,qlen=0;C: same as B
  2. clinet connect to C to consumer all of those jobs now result: A: info - registered_jobs=100,qlen=0; B:info - registered_jobs=0,qlen=0;C: same as B Note: the registered_jobs=100 at the time! And consumer client connect to A, 100 jobs duplicate send to A! But when A,C be connected at the same time, result is only be consumered once only Unreasonable it is?