The Curious Engineer

All blogs / Databases

Philip O'Toole

philipotoole.com

Software engineering, distributed systems, databases, and the teams that build them

DatabasesDistributed systems / cloudAI / ML

Posts
333 from 28 Nov 2009 to 24 Oct 2026
Posting
weekly (31 in the last year)
Kind
personal blog
Feed
https://philipotoole.com/feed/

2026 29

  1. Twelve years of distributed SQLite
  2. rqlite 10.5.1 to 10.6.0: Numeric Error Codes, Node Promotion, and CDC Fixes
  3. Improved web console in rqlite v10.5.0
  4. rqlite 10.3.1 to 10.4.0: Cluster Integrity, Streaming Backups, and CDC Security
  5. Antithesis breaks rqlite on purpose
  6. rqlite v10.3.0 – features, upgrades, and bug fixes
  7. From 18 months to 6: High-velocity database engineering
  8. Claude redesigns rqlite.io
  9. Codex for Open Source
  10. Proving to Fable I maintain the repo
  11. First impressions of Claude Fable
  12. rqlite v10.2: Improving the web console
  13. rqlite reaches 1 million Docker downloads
  14. rqlite v10.1: Schema management via the Web Console
  15. Humanoid robots won’t surprise us when they arrive
  16. Taking control of the SQLite WAL
  17. rqlite 10.0: Better clustering and better management
  18. Unified Telemetry Management Plane at Google Cloud Next
  19. New guide for working with rqlite clusters
  20. Antithesis chooses rqlite to demonstrate AI-assisted testing
  21. Speaking at GCP Next 2026
  22. Native Linux packages for rqlite
  23. The source code was the moat. But not anymore
  24. Discovering git worktrees
  25. Agentic coding with Claude and Copilot
  26. Why talking to LLMs has improved my thinking
  27. Common misunderstandings about large software companies
  28. Start your meetings at 5 minutes past
  29. rqlite 9.3.5 to 9.3.10: Snapshot Robustness, WAL Handling, and Shell Improvements

2025 25

  1. rqlite 9.3.1 to 9.3.4: Parser Updates, Static Analysis Fixes, and Non-Root Docker Images
  2. Balancing SQLite’s WAL, SYNCHRONOUS=OFF, and fsync for fast rqlite recovery
  3. rqlite images now available on GitHub Container Registry
  4. rqlite reaches 17,000 stars on GitHub
  5. Driving Open Standards in Cloud Observability
  6. Tokens & Tactics: Scaling Yourself Horizontally with AI
  7. rqlite 9.0: Real-time Change Data Capture for Distributed SQLite
  8. On the way to rqlite 9.0
  9. My development team costs $41.73 a month
  10. Consistency Over Availability: How rqlite handles the CAP Theorem
  11. rqlite 8.38.0 to 8.42.0: Leader Stepdown, Google Cloud Backups, and More
  12. Adding automatic Google Cloud Storage Backup and Restore to rqlite
  13. The Developer’s Manifesto for the Age of LLMs
  14. GPT is writing the GitHub issues, Copilot is fixing them
  15. rqlite development: the Agents are here
  16. New JDBC driver for rqlite
  17. rqlite turns 10: Observations from a decade building Distributed Systems
  18. rqlite 8.37.0: Automatic reloading of X.509 Certificates
  19. Gemini-driven code reviews in GitHub
  20. New Java client for rqlite
  21. New rqlite Go client
  22. Introducing flagforge: Simplifying Go Flag Code Generation
  23. rqlite Helm charts now on Artifact Hub
  24. rqlite reaches 16,000 stars on GitHub
  25. How rqlite is tested

2024 30

  1. rqlite 8.34.0 to 8.36.0: New Features and Enhancements
  2. New Configuration Guide for rqlite
  3. rqlite 8.33.0: Date and Time function support
  4. Faster Reads, Same Guarantees: Linearizable Consistency in rqlite 8.32
  5. Concurrency Control in Go: Inside rqlite’s Custom Synchronization Primitives
  6. rqlite 8.31.0: Improved support for BLOB data
  7. From Google Cloud to WordPress.com
  8. rqlite 8.30.0: Introducing Automatic Database Optimization
  9. Stephen Blum on rqlite
  10. rqlite 8.29: More extensions and improved management
  11. rqlite 8.28: Enhanced Docker Support for Seamless SQLite Extension Loading
  12. rqlite 8.27: loadable SQLite extensions support
  13. Building rqlite 9.0: Cutting Disk Usage by Half
  14. Delphi client for rqlite
  15. rqlite Office Hours
  16. rqlite reaches 15,000 stars on GitHub
  17. rqlite 8.24.9: now with multi-platform Docker images
  18. GopherCon 2023: Building Distributed Systems in Go
  19. rqlite 8.24.0 released: Point-in-time backups
  20. Building a highly-available search engine using SQLite
  21. Latest updates to rqlite 8.23
  22. Mailpit adds support for rqlite
  23. Prepping to Speak at Tech Conferences: From AWS re:Invent to GopherCon
  24. rqlite 8.23.0: Support for SQLite RETURNING
  25. rqlite Versions 8.20.0 to 8.22.2: Enhancements in Stability, Performance, and Data Handling
  26. rqlite 8.19.0 released – now with with Query timeouts
  27. rqlite 8.17.0 & 8.18.0: Scheduled VACUUMs and Enhanced JSON Support
  28. rqlite 8.16.0 released
  29. rqlite 8.15.0 released
  30. New Helm support for rqlite

2023 22

  1. rqlite 8.14.0 released
  2. rqlite 8.13.4 released
  3. Talking rqlite on the Contributor podcast
  4. rqlite 8.10.0 – load large SQLite datasets fast
  5. rqlite 8.0: Large Dataset Support and Core Feature Upgrades
  6. rqlite client libraries
  7. New Log Management features in GCP
  8. Distributed Systems at GopherCon 2023
  9. rqlite reaches 14,000 stars on GitHub
  10. Fix random(), stabilize tests
  11. On the way to rqlite 8.0
  12. Speaking at GopherCon 2023
  13. rqlite upgraded to SQLite 3.42.0
  14. rqlite now supports PowerPC, MIPS, and RISC
  15. rqlite 7.16.0 – restore your system from S3
  16. Adding automatic S3 backups to rqlite
  17. What did GPT-4 find wrong with the rqlite source code?
  18. rqlite 7.14.2 released
  19. 9 years of open-source database development
  20. Creating rqlite 7.14.0 with GitHub Copilot
  21. Stephen Wolfram on ChatGPT
  22. rqlite reaches 13,000 stars on GitHub

2022 22

  1. rqlite.io launched
  2. rqlite 7.13.0 released
  3. How I found a bug in SQLite
  4. rqlite 7.12.0 released
  5. rqlite 7.11.0 released
  6. Replacing Postgres with rqlite
  7. rqlite 7.10.0 released
  8. rqlite 7.8.0 released
  9. rqlite 7.7.0 released
  10. The Engineering Management Myths Star Trek Teaches
  11. rqlite 7.6.0 released – now with ARM builds
  12. Building Secure and Reliable Systems at Google
  13. rqlite 7.5.1 released
  14. rqlite 7.5.0: Trading durability for write performance
  15. rqlite reaches 10,000 stars on GitHub
  16. Testing rqlite read consistency
  17. Talking Distributed Systems at Hacker Nights
  18. rqlite 7.3.2 released
  19. New Slack channel for rqlite
  20. rqlite 7.0: Designing Node Discovery and Automatic Clustering
  21. Why are we still tailing log files?
  22. rqlite 6.9.0 released

2021 23

  1. rqlite 6.8.2 released
  2. Mentoring junior programmers: What I tell them is job number one
  3. rqlite: static linking and smaller Docker images
  4. rqlite 6.6.2 released
  5. rqlite 6.6.1 released
  6. Using Ansible to deploy WordPress
  7. rqlite 6.6.0 released
  8. rqlite at the CMU Database Group
  9. rqlite 6.5.0 released
  10. rqlite at Carnegie Mellon University
  11. rqlite 6.4.3 released
  12. rqlite 6.1.0 released
  13. Cloud Logging on the Google Cloud Platform Podcast
  14. LowEndBox talks rqlite
  15. rqlite 6.0: the evolution of a distributed database design
  16. rqlite on dbdb.io
  17. rqlite 5.12.0 released
  18. rqlite 5.11.1 released
  19. 7 years of open-source database development: lessons learned
  20. New Python package for rqlite
  21. Plugging a memory leak in rqlite
  22. rqlite 5.10.0 released: comparing its disk usage to 5.6.0
  23. rqlite 5.8.0 released

2020 17

  1. Moving to Protocol Buffers with rqlite 5.7.0
  2. Where is technical innovation actually happening?
  3. Parameterized SQL with rqlite 5.5.0
  4. rqlite 5.4.2 released
  5. Logs and Time Series are not the same
  6. rqlite 5.4.0 released
  7. From Rackspace to GCP
  8. Talking Audit Logging on Google Cloud Platform
  9. rqlite 5.3.0 released
  10. rqlite 5.2.0 released
  11. rqlite 5.1.1 released
  12. rqlite on InfoWorld
  13. RSA Conference 2020
  14. New knex.js library for rqlite
  15. Moving to HTTPS with Let’s Encrypt
  16. Scaling read performance with rqlite 5.1.0
  17. rqlite 5.0.0 released

2019 16

  1. Logging and Monitoring systems are hard to code
  2. rqlite 4.6.0 released
  3. Observing Observability at Devopsday
  4. devopsdays Galway
  5. Observing Observability
  6. Monitorama Baltimore 2019
  7. Enabling CircleCI testing for gorqlite
  8. Continuing the WordPress bring-up on GCP
  9. go mod in rqlite
  10. Meaningful Uptime Measurements for the Cloud
  11. How I handle my Gmail load at Google
  12. rqlite 4.5.0 released
  13. Using Commutativity for Faster Replication
  14. Learning data engineering
  15. rqlite 4.4.0 released
  16. Batching in Go

2018 12

  1. Jimmy Carter and the Failures of Management
  2. rqlite 4.3.1 released
  3. rqlite at the Pitt CS Club
  4. Go race detection and failing fast
  5. rqlite moved to Circle 2.0
  6. Deploying Vallified on GCP
  7. Moving to CircleCI 2.0
  8. Monitoring: it’s not just for production
  9. rqlite and Hashicorp Raft 1.0
  10. rqlite 4.3.0 released
  11. Moving East
  12. Happy New Year

2017 31

  1. rqlite 4.2.2 released
  2. One search to rule them all
  3. Ekanite 1.3.0 released
  4. The power of sorting
  5. rqlite 4.2.1 released
  6. Hash tables distilled
  7. rqlite 4.2.0 released
  8. Windows binaries now available for rqlite
  9. A shared code base does not a software team make
  10. rqlite 4.1.0 released
  11. Java client for rqlite
  12. rqlite v4.0.1 released
  13. New JavaScript client library for rqlite
  14. New rqlite Google Group
  15. Ekanite 1.2.3 released
  16. Go, gRPC, and PostgreSQL
  17. rqlite now available with node-to-node encryption
  18. Ekanite 1.2.1 released
  19. San Francisco ReactJS Meetup at Percolate
  20. Why Slack isn’t working
  21. rqlite v3.14.0 released
  22. rqlite now available as a Docker image
  23. Percolate at the San Francisco Python Meetup
  24. rqlite v3.13.0 released
  25. rqlite v3.12.1 now with Discovery Service for easier clustering
  26. Building a cluster discovery service with AWS Lambda and DynamoDB
  27. Analytics 2.0 goes live at Percolate
  28. rqlite v3.10.0 released
  29. rqlite v3.9.2 released
  30. What new development managers should know
  31. Ekanite 1.2.0 released

2016 34

  1. Building a snap for rqlite
  2. rqlite v3.8.0 released
  3. Stop asking "how much data do you have?"
  4. Some of my favourite programming books
  5. Load SQLite dump files into rqlite v3.7.0
  6. Elasticsearch Meetup at Percolate
  7. Ekanite at the San Francisco Go Meetup
  8. rqlite v3.6.0 released
  9. rqlite now supported on Microsoft Windows
  10. InfluxDB 1.0 released
  11. rqlite v3.5.0 released
  12. rqlite v3.4.1released
  13. Ekanite v1.1.0 released
  14. The evolution of the rqlite source code
  15. rqlite v3.4.0 released
  16. Be a Conviction Engineer
  17. rqlite v3.3.0 released
  18. rqlite v3.2.1 released
  19. How to organise a Go project
  20. rqlite v3: Globally replicating SQLite
  21. rqlite v3.0.1 released with leader redirection
  22. New Python clients for rqlite
  23. rqlite moved to new repository
  24. rqlite v2.2.1 released with HTTPS, Basic Auth, and user permissions
  25. rqlite at the San Francisco Go Meetup
  26. What I learned from programming databases
  27. Pre-built binaries now available for rqlite and Ekanite
  28. rqlite 2.0 released with configurable read-consistency
  29. rqlite – replicated SQLite with new Raft consensus and API
  30. rqlite and Hashicorp Raft Consensus
  31. New browser interface for Ekanite
  32. Gresham’s law and Slack
  33. Revisiting syslog-gollector
  34. Running services is fun

2015 23

  1. InfluxDB and the Raft consensus protocol
  2. Designing a search system for log data — part 3
  3. Designing a search system for log data — part 2
  4. Designing a search system for log data — part 1
  5. Contributing to InfluxDB
  6. Testing InfluxDB Storage Engines
  7. Building a distributed key-value store using Raft
  8. Coding like it’s 1999
  9. The strange economics of open-source software
  10. Who watches the watchers?
  11. 400 days of Go
  12. Leadership without Management
  13. Running services is hard
  14. Gophercon 2015
  15. InfluxDB 0.9.0 released
  16. Software development: it’s got nothing to do with computers
  17. Reviewing Implementing Cloud Design Patterns for AWS
  18. Increasing bleve indexing performance with sharding
  19. Reviewing Elasticsearch Cookbook
  20. Code reviews still rule
  21. History of Software Engineering
  22. Book Review: Cassandra High Availability
  23. Software Development for Infrastructure

2014 19

  1. Eudyptula Challenge
  2. Drop, Throttle, or Buffer
  3. Measure Everything
  4. Is node.js just a stopgap?
  5. You come for the features, but you stay for the uptime
  6. Evolving a language in and for the real world: C++ 1991-2006
  7. Replicating SQLite using Raft Consensus
  8. Wow, the Go Memory Model really threw me
  9. Writing a Syslog Collector in Go
  10. Call me Definitely
  11. A Prayer for Distributed Systems Developers
  12. InfluxDB and Grafana HOWTO
  13. What I wish I’d been told about the JVM
  14. How you should write software design documents
  15. Why you should write software design documents
  16. Always thinking of the next guy
  17. Welcome to your data
  18. Distributed Systems for Fun and Profit
  19. Book Review: Mastering ElasticSearch

2013 9

  1. Infrastructure at Scale: Apache Kafka, Twitter Storm and elasticsearch
  2. Speaking at AWS re:Invent 2013
  3. Avoiding elasticsearch split-brain
  4. Loggly Generation 2 Released!
  5. Technical Leadership through Testing
  6. Using the Source
  7. If you love your logs, set them free
  8. Monitoring Storm Kafka Spouts using Python
  9. Boost ASIO timers — errors are never enough

2012 7

  1. Bootstrapping Cassandra
  2. Generating Type-1 UUIDs using C++
  3. mutt and Google Mail
  4. New Challenges
  5. Eating your own dogfood
  6. Kubuntu 11.04 on the Chembook 2370VA
  7. The old ideas are still the best

2011 5

  1. A simple host system for a 6502 emulator
  2. Fedora Core 15 on the Chembook 2370VA
  3. Gaining Development Perspective from Field Trials
  4. The Power of the Cloud
  5. My guidelines for reusable Django applications

2010 5

  1. gdb, inline source, and stepping through your code
  2. Do you use expect? You should
  3. Installing Fedora Core 12 on Chembook 2370VA
  4. Valgrind, blessed be its name
  5. My git workflow

2009 4

  1. php and EXIF data
  2. Yahoo! Mail bans apostrophes
  3. Yellow Dog Linux 6.1 on the PS3
  4. Fedora 12 on the PS3