Incidentally, they also quite often create new bugs in super-old content due to changes in newer content.
I mean, the work they do is incredible. But it blows my mind how they manage to maintain this game given the amount of intertwined legacy within it. I'm not sure what exactly caused it to become as bad as it did. It's probably a mix of the game being far more popular than they originally anticipated, the team being incredibly large, and the engine itself not being very accomodating.
That’s true for servers running on modern hardware (lots of RAM, extremely fast SSDs), but when I’m working on desktop, mobile or embedded apps, some of them need embedded databases, and I still need to worry about it.
On desktops not all users have SSDs, so when the data is larger than a couple of GB i.e. can’t be cached in RAM, every IO takes 4-5ms because HDD seek latency.
Mobile/embedded devices typically have flash memory so the IO latency is lower, but that flash memory is not as fast as modern desktop or servers SSDs. E.g. some Android phones have 2000 random read IOPS, 220 random write IOPS https://www.phonearena.com/news/Android-storage-speed-compar...
P.S. I even need to worry about this when I’m designing RAM-only data structures. On modern systems, RAM is block device (the block size is 128 bit for dual-channel RAM), and there’s a pre-fetcher silicon in CPUs making sequential access much faster than random access.
I see it as a case of YAGNI.
Also this specific issue likely wasn't a problem of mass: the number of spells in the game is not that high, even today. The issue was throughput, IIRC they had high expectations and they got 10x as many signups as they'd expected.