#33: PostgreSQLのロック:アプリ開発の「はまりどころ」から内部実装まで(前編) episode artwork

EPISODE · May 26, 2026 · 43 MIN

#33: PostgreSQLのロック:アプリ開発の「はまりどころ」から内部実装まで(前編)

from Tech Table Log: 同期エンジニアの雑談・勉強ログ · host Lon, Shinya

PostgreSQLのロックの仕組みについて、アプリケーション開発者向けの視点から、データベース内部実装(SpinlockやLWLockなど)のディープな世界までを2回に分けて深掘りします。前編となる今回は、アプリケーション開発者が気を付けるべき「はまりどころ」を解説します。複数トランザクションの同時更新や本番環境でのDDL(ALTER TABLEなど)実行時など、ロックの理解が不可欠なケースを取り上げ、4種類のテーブルロックと行ロック(FOR UPDATE)の基本を整理します。さらに、実践的な5つのトラブルケースとその対策を紹介します。長時間のSELECTとALTER TABLEが引き起こす連鎖的なブロックや、外部キー・ユニーク制約の暗黙的ロックによるINSERT同士のデッドロックを解説します。また、例外的に自動キャンセルされない「トランザクションID周回防止バキューム」や、テーブルファイル末尾のページ切り詰め処理に潜む罠など、予期せぬサービス停止を防ぐための知識を議論します。PostgreSQLのロック / MVCC / テーブルロックと行ロック / FOR UPDATE / Access Exclusive / デッドロック / ALTER TABLEの連鎖ブロック / 外部キー・ユニーク制約の暗黙的ロック / トランザクションID周回防止バキューム / ページ切り詰め参考リンクPostgreSQLのロックでハマりがちな挙動5選AWS Engineer Reports PostgreSQL Performance Halved By Linux 7.0, But A Fix May Not Be EasyI really dislike the use of spinlocks in postgres

Episode metadata supplied by the publisher feed · Published May 26, 2026

Embed this episode

Ready to play

#33: PostgreSQLのロック:アプリ開発の「はまりどころ」から内部実装まで(前編)

0:00 43:44

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

No similar episodes found.

No similar podcasts found.

Frequently Asked Questions

How long is this episode of Tech Table Log: 同期エンジニアの雑談・勉強ログ?

This episode is 43 minutes long.

When was this Tech Table Log: 同期エンジニアの雑談・勉強ログ episode published?

This episode was published on May 26, 2026.

Can I download this Tech Table Log: 同期エンジニアの雑談・勉強ログ episode?

Yes. Use the download control on the episode player to save the publisher-provided media file.
URL copied to clipboard!