Tag: design-concurrency
All the articles with the tag "design-concurrency".
-
System Design - How TiDB Locks Rows for SELECT FOR UPDATE
Trace a pessimistic SELECT FOR UPDATE from TiDB's executor through the TiKV MVCC lock command, including lock waits, timestamp conflicts, and the settings that control them.
-
System Design - How TiDB Async Commit Works in Source Code
A focused source walkthrough of TiDB Async Commit: how a SQL COMMIT reaches tikv/client-go, how TiKV stores async-commit lock metadata and a minimum commit timestamp, and why TiDB can acknowledge before background lock finalization.
-
System Design - How TiKV Scheduler Latches Protect TiDB Writes
Follow two competing TiDB storage commands through five TiKV latch types: sorted key hashes, per-command ownership, bucket queues, wakeup retries, completion, and the configuration knobs that do not remove hot-key contention.
-
System Design - How Hardware Interrupts and Trap Handling Work
How hardware interrupts work: the interrupt lifecycle from electrical signal to handler execution, IDT, IRQs, top-half/bottom-half processing, and a Linux kernel source code walkthrough.
-
System Design - How RCU (Read-Copy-Update) Works
How Linux's RCU (Read-Copy-Update) synchronization mechanism works: the publish-subscribe pattern, grace periods, quiescent states, memory barriers, and a source code walkthrough of the Linux kernel's Tree RCU implementation.
-
System Design - How the Python GIL (Global Interpreter Lock) Works
How CPython's Global Interpreter Lock works: the GIL data structure, eval loop integration, tick vs timeout-based switching, GIL release during I/O, impact on threading, and the road to removing it (PEP 703, free-threaded Python 3.13+).