boringSQL

boringsql.com · Personal blog · on HN since 2025

boringSQL is a PostgreSQL-focused blog covering internals, query behavior, indexes, MVCC, vacuum and EXPLAIN output.

What HN saysHN commenters link it for its posts on instant database clones in Postgres 18 and interactive visualizers, such as HOT updates, to explain concepts.
19HN people shared it
5linked it in comments
44stories submitted
793story points
3 months agolast shared
2025people per year2026

Most-shared posts

  1. 1
    Instant database clones with PostgreSQL 18
    4 people · 395 points · first shared 2025 · 154 comments on HN
  2. 2
    The Cost of PostgreSQL Arrays
    3 people · 5 points · first shared 2026 · discussion on HN
  3. 3
    PostgreSQL's MVCC is bad. So is everyone else's
    3 people · 5 points · first shared 2026 · discussion on HN
  4. 4
    Vacuum Is a Lie: About Your Indexes
    2 people · 94 points · first shared 2025 · 50 comments on HN
  5. 5
    Reading Buffer statistics in EXPLAIN output
    2 people · 3 points · first shared 2026 · discussion on HN
  6. 6
    Welcome to ORDER BY Jungle
    2 people · 3 points · first shared 2026 · discussion on HN
  7. 7
    Production query plans without production data
    2 people · 3 points · first shared 2026 · discussion on HN
  8. 8
    Good CTE Bad CTE
    2 people · 3 points · first shared 2026 · discussion on HN
  9. 9
    PostgreSQL's 8KB Page
    2 people · 3 points · first shared 2026 · discussion on HN
  10. 10
    Beyond Start and End: PostgreSQL Range Types
    2 people · 2 points · first shared 2025 · discussion on HN
  11. 11
    RegreSQL: Regression Testing for PostgreSQL Queries
    1 people · 151 points · first shared 2025 · 38 comments on HN
  12. 12
    PostgreSQL Maintenance Without Superuser
    1 people · 80 points · first shared 2025 · 5 comments on HN
  13. 13
    PostgreSQL MVCC, Byte by Byte
    1 people · 6 points · first shared 2026 · discussion on HN
  14. 14
    The DISTINCT in Your COUNT
    1 people · 5 points · first shared 2026 · discussion on HN
  15. 15
    The curious case of Google's AlloyDB
    1 people · 4 points · first shared 2026 · discussion on HN

What HN people wrote when they linked it

stephen · 2026-08-01
I haven't had time to try it, but I thought running PG on a copy-on-write filesystem with a specific "clone template" incantation would get you instant clones? Probably doable in a docker container? https://boringsql.com/posts/instant-database-clones/
eugercek · 2026-05-13
If you use xfs (+`file_copy_method=CLONE`) you can do this with Postgres 18. `CREATE DATABASE clankerdb TEMPLATE sourcedb STRATEGY=FILE_COPY;`. But Ardent can be useful for many, because cloud providers uses heavily restricted Postgres. And many use Aurora, which doesn't event let configure the `long_line_prefix`. Though if cloud providers add file_copy_method=CLONE compatible managed pg ... ref: https://boringsql.com/posts/instant-database-clones/
radimm · 2026-04-30
Somehow it feel HOT updates are very confusing. You can also try to play with interactive visualizer to understand it better https://boringsql.com/visualizers/hot-updates/
tee-es-gee · 2026-04-20
> You don’t need anything but vanilla pg and a supported file system to do it anymore; just clone the database using a template and a newish version of Postgres. Are you referring to `file_copy_method = clone` from Postgres 18? For example: https://boringsql.com/posts/instant-database-clones/ I think the key limitation is: > The source database can't have any active connections during cloning. This is a PostgreSQL limitation, not a filesystem one.
christophilus · 2025-12-23
I think the examples here are pretty good: https://boringsql.com/posts/beyond-start-end-columns/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close