WhoBuilt

SQLite's Origin, Rigorous Testing, and Future

Oct 22, 2025· 8 min· 1.7K views·Watch on YouTube

Speaker

D. Richard Hipp, SQLite’s creator and a member of the team that supports it full-time, talks with Callstack’s host about SQLite’s origins, testing practices, and long-term support.

Why SQLite began

As a freelance developer in the late 1990s, Hipp disliked relying on a database server that could be unavailable and make his application fail. After a client contract ended, he built an SQL engine that worked directly with files on disk and released it as open source. Interest grew into paid support work, and by about 2007 he had a small team working on SQLite full-time.

Maintaining a long-lived project

Hipp says revisiting old code can feel like a time warp because he does not keep a clear chronology of events. SQLite uses a version control system he wrote himself rather than Git. Its website’s “This Day in History” feature shows past project activity, and Hipp has pledged to support SQLite through 2050.

How rigorous testing took shape

SQLite has close to 100,000 handwritten test cases, according to Hipp. A customer in aviation introduced him to the DO-178B safety standard and modified condition/decision coverage, which he then applied to SQLite. He had hoped to sell test artifacts to aviation companies, but instead found that rigorous testing helped bugs subside.

Testing across platforms

As SQLite’s test coverage reached 100%, bug reports from Android dwindled, Hipp says. The broad test suite also lets the team refactor substantial parts of the code with more confidence. Running tests across many cores on Linux takes a couple of hours, and the team also tests Windows, Mac, ARM, x86, PowerPC, and Raspberry Pi, including on an old MacBook used for big-endian testing.

Takeaways

  • A local database engine can avoid making application reliability depend on a separate server.
  • A clear history of changes can help maintainers make sense of a long-lived codebase.
  • High test coverage can reduce incoming bug reports and make major refactoring safer.
  • Testing on older and different-endian hardware can catch compatibility problems that modern machines may miss.

Mentioned in this talk

Search inside this talk

What was claimed 11

Related talks

SQLite's Origin, Rigorous Testing, and Future, D. Richard Hipp · WhoBuilt