Less bugs really. Those droplets were highlighting an issue we haven’t seen locally. The key is being able to spot the issues and repro them more easily. With the elastic server we have part one down, and with pending logging improvements and simpler code, the second part should be getting easier too.
Indeed, it’s been in the core code for so long, it was just how things were done in the code there. But it was increasingly apparent that it was causing complexity and bugs more than any benefit we were getting (as can be seen from those benches).
I don’t think the update implies we shouldn’t multithread. So much (as you say), let’s get it going as simply and cleanly as possible, and then see where are bottlenecks lie and what multi-threading may give us.
But the change up to a single-threaded-first approach definitely feels like a positive change for the codebase.