Hacker News new | ask | show | jobs
by ihenriksen 3295 days ago
I see Comdb2 requries SQLite to install. So, I'm guessing Comdb2 is a distributed storage engine for SQLite, or?
2 comments

There's a heavily modified SQLite embedded in Comdb2 for query parsing/planning. There's some auxiliary tools that can optionally use SQLite (or Comdb2). It'll run without installing an SQLite package.
I believe originally it wasn't sql, and they added SQL by using the sqlite parsing engine for SQL. They are a massive contributor to the sqlite project. It is in no way supposed to be compatible with sqlite
I think you're mixing 2 things. This is a complete rewrite of an old key-value store (hence the 2 in the name) but comdb2 was always SQL. Comdb2 shares a few things with comdb, but they're really just to make migration easier (the preference for tags in csc2 files instead of usual DDL, and then a tag based API that it looks like we got rid of for this release). Under the covers comdb2 is completely different and as far as I know shares no code with comdb.
It wasn't always an SQL system. SQL was added a year or two in its development (with lots of databases already live).
Yep. With a false start or two along the way. One of the most interesting things on this project was repeatedly changing engines while the plane was in the air.
We've had databases literally up for 10+ years, through 5-6 major version upgrades. There's been one file format change that required downtime very early on.
So, you can run Comdb without SQLite?
It uses components of SQLite, included in-tree.