It happens frequently because there's often not support in the underlying systems for mergeable latency sketches (e.g. DDSketch, HDR Histogram, or libcircllhist). There thankfully seems to be slowly increasing amounts of support for doing this the correct way.
> Second, our evaluation shows that despite our improvements, the Bw-Tree still does not perform as well as other concurrent data structures that use locks.
> outside expert on database optimizers run a months-long bootcamp, with the goal of teaching our developers how state-of-the-art optimizers work, complete with homework assignments to read seminal papers on the subject
Any chance you could share more about this? This general area of how to build a production grade SQL optimizer seems to be a thing that's more scattered in tiny pieces across a wide number of papers, or held in peoples' heads, than aggregated in a teaching manner. It seemed that the realistic general advice on how to build a SQL optimizer was to poach someone from the SQL Server team. ;)
I've generally just gone referring back to the unfinished Building Query Compilers[1] when pondering this subject. Not that the hundreds of references don't provide sufficient material to read though as well, but it'd be interesting to hear what a bootcamp like this presented as state of the art.
CockroachDB is referred to as the clone here. They once gave a talk literally titled "Towards an Open-Source Spanner" (https://www.youtube.com/watch?v=ndKj77VW2eM), so I don't believe that's an unfair characterization.