Jepsen

Công ty Dành cho thành viên

Mạch tiến hoá

Jepsen là dự án kiểm thử độc lập về tính an toàn của database và hệ phân tán, không phải một công ty kể về hệ của mình; báo cáo 6/2020 áp công cụ Elle lên PostgreSQL một node và tìm ra chế độ "serializable" không serializable vì một bug có từ 2011, điều mà bộ test chọn tay lâu năm bỏ sót Jepsen 2020. Báo cáo 12/2023 về MySQL 8.0.34 cho thấy "Repeatable Read" mặc định của InnoDB yếu hơn tên gọi (lost update, đọc không lặp lại được) và "Serializable" của RDS vi phạm serializability khi đọc từ replica Jepsen 2023: cùng một tên mức isolation, mỗi hệ một ngữ nghĩa. Các báo cáo khác cho thấy cùng một mẫu qua hơn một thập kỷ: năm 2013, thiết kế replication của Kafka 0.8 mất một nửa số ghi đã ack khi ISR co về một node Jepsen 2013, và Cassandra mất ghi khi sửa cell do last-write-wins Jepsen 2013; năm 2022 Redpanda ghi trùng với cấu hình mặc định Jepsen 2022; năm 2025 RDS for PostgreSQL vi phạm Snapshot Isolation khi đọc từ replica Jepsen 2025 và NATS mất dữ liệu khi crash cấp OS vì fsync lười Jepsen 2025.

Timeline

Năm = năm sự kiện theo bài (có thể sớm hơn năm đăng bài).

Năm Giai đoạn Thay đổi Nguồn
2013 3. Quy mô lớn Kafka 0.8 (thiết kế replication): ISR co về một node rồi bầu leader mới, mất 520/987 ghi đã ack. Jepsen 2013
2013 3. Quy mô lớn Cassandra 2.0.0: last-write-wins mất 28% ghi khi sửa cell, row isolation theo xác suất, lightweight transaction mất 1–5% ghi. Jepsen 2013
2020 3. Quy mô lớn PostgreSQL 12.3: repeatable read là snapshot isolation; serializable có G2-item do bug phát hiện xung đột (có từ 2011), vá trong bản phụ 8/2020. …

Bạn đã dùng hết 3 bài đọc thử miễn phí

Đây là phần mở đầu của Jepsen. Thành viên đọc được toàn bộ 46 bài tổng hợp theo chủ đề và 141 dòng thời gian công ty. Các bài tóm tắt vẫn đọc tự do.

  • Đọc không giới hạn mọi bài tổng hợp và dòng thời gian
  • Danh sách đọc cá nhân hoá theo trình độ và mục tiêu
  • Cộng đồng Discord cho thành viên (sắp mở)

Gói 6 tháng giảm ~16%, gói 12 tháng giảm ~25%. Trả bằng VietQR hoặc thẻ.

Tất cả bài viết của blog (50 bài)

Blog này có 50 bài – thành viên xem đầy đủ danh sách, nhóm theo năm, có link về bài gốc.

Xem gói thành viên