Our recent server issues
lichess.org
lichess.org
Being upfront, my experience of the people in charge of the organization there doesn't have much goodwill left. Nothing against Thibault personally, I think he's done some great things but seems to be busy with whatever he's interested in and management isn't it, and he has some unprofessional people with access that work for the project/charity.
I had volunteered my services years ago as a System Administrator (no charge) with suggestions, but with limited modes of communication, multiple issues going stale, no response with an auto issue closed. They have issues that don't get addressed, and their process doesn't appare to be aimed to cultivate qualified volunteers or improve the bus factor of the project.
To make things worse, when I expressed disagreement with constructive feedback regarding one of their process decisions, one of the other dev's with access apparently took offense and the next day I found my lichess account had been edited by an admin without notice or notification. I could not log in (wrong password), the password and email for password recovery were changed, and trying to access the profile URI directly showed the account as banned.
It seemed this was done out of spite, and definitely without any kind of due process. Appeals by email went unanswered within the 90 day cutoff I gave them. As a result I submitted a complaint to the french charities regulatory body and moved on since the group wasn't worth wasting any more of my time. I haven't heard back so who knows if anything came of what I reported.
In my opinion, they've got more internal problems than they let on, and to me this is just spillover.
Its unfortunate because any failure like this impacts so many people, but I don't find it surprising given my limited experience of the people there.
Whatever personal issues you may have with the admins, it's extremely plausible that this issue was sufficient to cause an outage.
And yes these things happen at big tech companies and mature software products even when they have teams and testing frameworks specifically looking for them. A smaller project like this, I cut them a break.
The data behind what "Open Source" projects look like differs from the popular culture narratives and assumptions about what they should look.
I doubt there was justification for disabling your player account. and I'm sorry that happened to you.
But it sounds like your expectations about code contributions, and onboarding new volunteers may have been far from that project's reality.
I've worked with a few OSS projects in the past that were much more open and transparent. My expectations were framed by the contribution documentation Lichess provided on their site and it did differ significantly from reality.
I'll definitely be picking a copy up in the near future for reading, currently I have to first finish up with the holiday gift exchange books from colleagues.
I'm not a management person but I'm currently making my way through HBR 10 Essential reads (book) which was given; I'd never have bought it myself but I've found some useful insight reading through it (unexpected).
In most countries, operating as a charity has certain annual reporting requirements. These reports often contain a direct contact (i.e. Agent of Service type contacts).
I was able to find the charity registration info from sirene.fr by their address (there were 14 listings out of that address when I just rechecked). Siret# 83037871700029, Siren# is the first 9 digits.
There was no phone number listed so I moved onto JOAFE and found that there were no annual reports attached to that Siren #. Backing up I went to RCS, the company & trade register which is required to obtain a kbis-extract (needed to open a bank account as a company in france) and there were no listings on the Lichess or Lichess.org trade names. RCS doesn't allow a search by Siren # and that's where my search died.
The complaint was that they were operating, and had not filed the required reports.
I don't speak french, so the complaint was in English via a webform and since it was difficult to pursue the matter further at the time, I chose to move on to better things.
Edit: I've confirmed that the annual reporting is still a problem on JOAFE. Also, back when this originally happened I had noticed the budget they linked to on googledocs for what they spend on infrastructure was dated, not sure if that is still the case.
If anyone with a greater knowledge of OSINT or a command of the french language wants to look into this further there are a number of administrative inconsistencies that might be worth following up on.
Personally, I don't see how you can be registered as a french charity and accept donations/other assistance without the appropriate bank account or filing annual reports.
Though I admit, I don't have much first-hand knowledge of doing business in France. Either way, its not worth my time taking this any further.
A chess congestion pile up... sounds like an event stream rook-ie mistake. :-)
Seriously congrats to Lichess for growing. It's an amazing site. Donate if you can.
On a side note, huge props to Lichess, the fact that they can compete with chess.com which has so many resources behind it is very impressive. Everyone who plays chess should consider becoming a patron.
Would be interesting to know what caused the entire site to go down in the beginning. Wonder if it was just too much traffic.
And a game review with some commentary about the issue: https://www.youtube.com/watch?v=lh_NeBZhqPM
https://github.com/ornicar/lila/blob/98691c8901cc0e7d0f338f4...
I'm certain the process can be parallelized - it just hadn't been considered necessary before.
Mostly interested in what these other events were and how they interact with pairing. Don't really know what pairing involves but seems that should go fairly fast even on a single CPU core (unless it's doing some kind of lookup or calculation but that part should be parallelizable)
Also removing bottlenecks is not related to surge capacity but rather code level optimizations that they didn't realize were needed until this happened so it's easy to say that after the fact...
The leaderboard then only needs to modified (read can be done without race conditions) by the top 100 or whatever.
Apart from when Agadmator wants his fans to be in the same tournament as Magnus Carlsen etc., there is basically no need to hold chess tournaments with over 1000 players.
"Load" is players finishing games and requiring new match pairings / rating updates for the tournament to continue. You can tell them to wait, sure. But as long as the rate of games finishing exceeds the rate at which they can process them I don't see how that would improve the situation, the tournament would be stuck anyway.
One option is to eg. limit the total number of players in the tournament up front but they explicitly said they didn't want to do that.
That's an assumption, there's a lot of assumptions flying around right now. The simple answer is we don't know.
Often there are a lot of design tradeoffs, bcrosby was likely questioning whether all events going into that specific queue were strictly necessary for matchmaking. We don't even know that this was actually the problem.
So far, no professional post-mortem, or root cause analysis has been released.
There are certainly ways one can setup these type of services so they dynamically scale correctly, but since the architecture they are using isn't fully disclosed its difficult to say anything with certainty and this type of guesswork is entirely unproductive.