Skip to content

Sqlite

  • Published on
    2026년 3월 3일, SQLite 개발자 Dan이 WAL 모드에서 드물게 데이터베이스를 손상시킬 수 있는 데이터 경합을 찾아 고쳤습니다. 이 버그는 WAL이 도입된 3.7.0(2010-07-21)부터 3.51.2(2026-01-09)까지 모든 버전에 들어 있었고, 3.51.3(2026-03-13)에서 수정됐습니다. 원인은 wal-index 헤더의 nBackfill 필드 하나를 서로 다른 두 락이 나눠 지키고 있었다는 것입니다 — 증가는 WAL_CKPT_LOCK 아래에서, 0으로 되돌리는 일은 WAL_WRITE_LOCK 아래에서 일어납니다. 다만 정직하게 말하면 이건 비상사태가 아닙니다. SQLite 팀조차 실험실에서 자연 발생시키지 못해 테스트 훅을 심어야 했고, 공개된 문서는 발생률이 SSD 고장이나 우주 방사선 히트의 예상 발생률 이하로 보인다고 밝히고 있습니다. 이 글은 WAL 되감기 메커니즘, 6단계 손상 시나리오, 재현할 수 없는 버그를 고쳤다고 말하는 방법, 3.52.0 철회로 꼬인 2주, 그리고 락파일 갱신 한 번에 조용히 취약 버전으로 되돌아간 실제 사례를 정리합니다.
  • Published on
    지구상에서 가장 많이 배포된 데이터베이스는 오라클도, 포스트그레스도 아닌 SQLite입니다. 여러분의 폰, 브라우저, 심지어 비행기 안에도 있습니다. 서버 없는 단일 파일 설계, 클라이언트-서버 DB를 이길 때, WAL 모드, 인메모리 DB로 테스트하기, WASM으로 브라우저에서 돌리기, litestream으로 내구성 확보까지 정리합니다.
  • Published on
    PostgreSQL 17/18, MySQL 9, MariaDB 12, SQLite + libSQL + Turso, DuckDB 1.x, ClickHouse, StarRocks, Doris, Druid, Pinot, TiDB, CockroachDB 25, YugabyteDB, Cassandra 5, ScyllaDB, Aerospike, Neon, Supabase, PlanetScale, Xata, EdgeDB → Gel, SurrealDB, Convex, 그리고 Drizzle / sqlc / Prisma / SQLAlchemy까지 — 2026년 데이터베이스 지형도를 OLTP·OLAP·NewSQL·NoSQL·Embedded·ORM 전 축으로 정리.
  • Published on
    2026년 가장 의외의 인프라 트렌드는 24살 먹은 단일 파일 데이터베이스 — SQLite다. libSQL과 Turso의 임베디드 레플리카가 로컬 파일에서 읽고 원격으로 쓰는 모델을 일반화시켰고, Cloudflare D1은 엣지에 SQLite를 분산시켰으며, LiteFS는 FUSE로 분산 SQLite 실험을 했고(현재 일몰), mvSQLite는 FoundationDB로 백킹했다. 그리고 Litestream이 모든 것의 기반이 되는 지속 백업을 제공한다. 이 글은 무엇이 진짜로 새로운지, 왜 이 부활이 우연이 아닌지, 로컬 우선·엣지 네이티브 앱이라는 새로운 토폴로지가 어떻게 가능해졌는지, 그리고 SQLite가 옳은 선택일 때와 틀린 선택일 때를 정직하게 다룬다.
  • Published on
    전 세계에서 가장 많이 배포된 소프트웨어이자 1조 개 이상의 데이터베이스로 활동 중인 SQLite. 이 글은 SQLite의 내부를 처음부터 해부합니다. D. Richard Hipp의 2000년 설계부터 현재까지의 진화, B-tree 기반 페이지 저장, Rollback Journal과 WAL 모드의 차이, Pager와 Page Cache, VFS(Virtual Filesystem) 추상화, Virtual Table로 확장, Query Planner와 bytecode VM, FTS5 전문 검색, R-tree 공간 인덱스, 그리고 "가장 신뢰할 수 있는 소프트웨어"가 된 광적인 테스트 문화까지 — 가장 성공적인 임베디드 데이터베이스를 제대로 이해하고 싶은 엔지니어를 위한 종합 가이드입니다.