frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Decomposing Transactional Systems

https://transactional.blog/blog/2025-decomposing-transactional-systems
132•pongogogo•8mo ago

Comments

karmakaze•8mo ago
> commit version is chosen — the time at which the database claims all reads and writes occurred atomically.

This post doesn't mention transaction isolation specifically though it does say "How does this end up being equal to SERIALIZABLE MySQL?" So maybe I'm supposed to consider this post only for 'Every transactional system' running with SERIALIZABLE transaction isolation. I don't particularly care about that. I do care that the database I use clearly states what its isolation names mean in detail and that it does exactly what it says. e.g. I don't expect MySQL SERIALIZABLE to exactly mean the same as any other database that uses the same term.

mjb•8mo ago
MySQL Serializable is pretty similar to serializable in other databases, in terms of the observable anomalies. There's a good set of tests here: https://github.com/ept/hermitage

> So maybe I'm supposed to consider this post only for 'Every transactional system' running with SERIALIZABLE transaction isolation.

No, it's a general point about the nature of transactions in DBMSs, and the different implementation choices. As the article says, there are some variations (e.g. MVCC at levels lower than serializable inherently has two 'order' steps).

karmakaze•8mo ago
I'm not seeing the mention of two 'order' steps. Are you referring to the larger part of what I quoted?

> MVCC databases may assign two versions: an initial read version, and a final commit version. In this case, we’re mainly focused on the specific point at which the commit version is chosen — the time at which the database claims all reads and writes occurred atomically.

For non-SERIALIZABLE isolation there may be no such "time at which the database claims all reads and writes occurred atomically", which is how I took the rest of the post to mean when running with SERIALIZABLE isolation.

transactional•8mo ago
(Hi! Post author here.)

It is written with a lean towards serializable, partly because there's a wide variety of easy examples to pull which all implement serializable, but the ideas mostly extend to non-serializable as well. Non-serializable but still MVCC will also place all of their writes as having happened at a single commit timestamp, they just don't try to serialize the reads there, and that's fine. When looking at non-serializable not MVCC databases, it's still useful to just try to answer how the system does each of the four parts in isolation. Maybe I should have been more direct that you're welcome to bend/break the mental model in whatever ways are helpful to understand some database.

The line specifically about MySQL running at serializable was because it was in the Spanner section, and Spanner is a (strictly) serializable database.

karmakaze•8mo ago
Thanks for the clarifications and diagrams. I can see how using something like Spanner from the outset makes sense to use and stick with serializable isolation. With other SQL dbs, I've mostly seen repeatable read, read committed, and even read uncommitted used in the name of performance. Read committed works fine but you have to design everything for it from the start with thoughtful write and read sequences.

Moving to serializable should be easy but isn't in the case of Spanner and the like because you can't make 100+ of sub-millisecond queries to respond to an API request if that's how your app evolved.

The way I imagine the future is to bring the code closer to the data like stored procedures, but maybe in a new way like modern languages compiled to run (and if necessary retry) in a shard of the database.

mjb•8mo ago
This is great, really worth reading if you're interested in transactions.

I liked it so much I wrote up how the model applies to Amazon Aurora DSQL at https://brooker.co.za/blog/2025/04/17/decomposing.html It's interesting because of DSQL's distributed nature, and the decoupling between durability and application to storage in our architecture.

maniacalhack0r•8mo ago
DSQL is so cool - have been following since the release and once it supports more of the postgres feature set + extensions it’ll be a killer. Fantastic architecture deep dive at ReInvent as well.
pongogogo•8mo ago
Hey Mark, I actually found this post via yours so thanks!

Texas a&M Bans Philosophy Prof. From Teaching Plato Because of "Gender Ideology"

https://www.erininthemorning.com/p/texas-a-and-m-bans-philosophy-prof
1•sapphicsnail•14s ago•0 comments

Wing and Walmart expand drone delivery to 150 new stores coast to coast

https://wing.com/news/wing-walmart-expand-drone-delivery-coast-to-coast
1•xnx•32s ago•0 comments

The struggle of resizing windows on macOS Tahoe

https://noheger.at/blog/2026/01/11/the-struggle-of-resizing-windows-on-macos-tahoe/
2•happosai•1m ago•0 comments

Slow iOS 26 Adoption

https://mjtsai.com/blog/2026/01/09/slow-ios-26-adoption/
4•SoKamil•3m ago•0 comments

Survey on integrating large language models with knowledge-based methods (2025)

https://www.sciencedirect.com/science/article/pii/S0950705125005490
1•mpweiher•4m ago•0 comments

Show HN: Pi-coding-agent: Emacs front end for AI-assisted coding

https://github.com/dnouri/pi-coding-agent
1•dnouri•8m ago•0 comments

How to Fire Your Boss (1970)

https://theanarchistlibrary.org/library/bossbusters-how-to-fire-your-boss
1•Tomte•9m ago•0 comments

Nat20: A Dungeons and Dragons 5th Edition combat engine

https://github.com/MadsWedendahlKruse/nat20
1•homarp•9m ago•1 comments

DHS restricts congressional visits to ICE facilities in Minneapolis

https://www.npr.org/2026/01/11/nx-s1-5673949/dhs-restricts-congressional-visits-to-ice-facilities...
2•mickle00•10m ago•0 comments

Git considers SHA-256, Rust, LLMs, and more (2025)

https://lwn.net/Articles/1042172/
1•shepherdjerred•12m ago•0 comments

Why Intelligence Doesn't Improve Reasoning

https://dianoiaprotocol.substack.com/p/why-intelligence-doesnt-improve-rationality
1•ParadoxHaze•13m ago•0 comments

Pico GPU is a 300KB memory GPU intended to learn and experiment with shaders

https://ncannasse.github.io/picogpu/
1•generichuman•13m ago•0 comments

"There Are Two Possible Futures for American Science."

https://issues.org/american-science-simons-spergel-interview/
4•mosesbp•15m ago•0 comments

SpecificProxy: Proxy Using a Specific IP

https://github.com/danthegoodman1/specificproxy
1•dangoodmanUT•17m ago•2 comments

Guide for Newcomers – SCP Foundation

https://scp-wiki.wikidot.com/guide-for-newcomers
1•Tomte•17m ago•0 comments

A Conversation with Ken Williams (Sierra Online / Cave) [video]

https://www.youtube.com/watch?v=2KRK0nVoodE
1•sgt•24m ago•0 comments

API Impact Tracker – Know which API clients you'll break before deploying

https://github.com/aj9704845-code/api-impact-tracker
1•PeterDS•24m ago•1 comments

Annual Reboot: 52 Questions to Reflect and Reset

https://elacrain.com/writing/annual-review/
1•simonebrunozzi•26m ago•0 comments

1D-Pong Game at 39C3

https://github.com/ogermer/1d-pong
1•oger•26m ago•1 comments

Ask HN: Is there a point to maintaining distant connections on social media?

2•Desafinado•28m ago•2 comments

70 person relay of Super Mario 64 [video]

https://www.youtube.com/watch?v=r-VFPEh59k4
2•HelloUsername•29m ago•0 comments

WhatsApp Is Untrustable

https://toki.la/posts/whatsapp
2•todsacerdoti•29m ago•0 comments

Ask HN: Moved to SF to build a startup. What next?

1•kvaranasi_•30m ago•0 comments

Mitigating the Billion Dollar Mistake

https://www.gingerbill.org/article/2026/01/11/mitigating-the-billion-dollar-mistake/
1•PKop•31m ago•0 comments

Show HN: A mobile-first React share sheet with native sharing

https://sharesheet.gwendall.com
2•ges•36m ago•0 comments

Ask HN: Tips for getting the ROM for an old speech synthesizer?

2•ctoth•36m ago•0 comments

Show HN: Karmic Tail Calculator – A Destiny Matrix Patterns

https://karmictail.net
1•lion__93332•36m ago•0 comments

Show HN: I forced Apple to admit a "Product Issue" using AI and CIA principles

https://medium.com/@ryu360i/when-authorization-breaches-availability-analyzing-the-27-2kb-icloud-...
1•ryuzaburo•37m ago•0 comments

PluriSnake gameplay [Sun Jan 11, 2026 puzzle] – Beta available [video]

https://www.youtube.com/watch?v=JAjd5HgbOhU
1•amichail•39m ago•1 comments

Ask HN: What was the best sci-fi book of 2025?

5•Erikun•40m ago•0 comments