Queue full

Jump to navigation Jump to search
Revision as of 31 May 2013 at 08:17.
The highlighted comment was created in this revision.

Queue full

When the server queue is full, LiteRumble is returning an OK, making the client discard the uploaded battle.

IMHO it would be better to return an ERROR instead, telling the client to keep the battle and retry the upload later.

    MN (talk)22:40, 30 May 2013

    I wouldn't mind doing that if the client would do a delay for 10 seconds or something before trying again after an error. Right now it just retries the battles that failed each iteration (along with the new ones) and this quickly leads to all clients just trying to upload at full speed the whole time, which will put too much load on the server.

    If we wanted to change the client protocol so that the client had a delay when this happened, I wouldn't have a problem. However, another issue is that the priority battles get delayed then, which means that a) the bots that need priority battles end up getting too many once the queue is run and b) new bots take a long time to enter the rumble. So, optimal client behaviour would be if the server returns OK. QUEUE FULL. then the client should wait 10 - 30 seconds then retry uploading the same pairing to the server.

    PS. the new rumble structure lends itself well to bulk upload strategies. If you want to write a bulk upload protocol I would be happy to look it over and implement it on the server.

      Skilgannon (talk)10:17, 31 May 2013