Supabase Postgres 14 ใกล้หมดซัพพอร์ต: เช็กลิสต์ก่อน auto-upgrade
กำหนดนี้ไม่ใช่เรื่องไกลตัวแล้ว Supabase จะยุติการรองรับ Postgres 14 ในวันที่ 1 กรกฎาคม 2026 โปรเจกต์ที่ยังอยู่บนเวอร์ชัน deprecated จะถูกอัปเกรดอัตโนมัติไปยังเวอร์ชันล่าสุดที่ใช้ได้ แต่ถ้ามี extension ที่ไม่รองรับ โปรเจกต์อาจถูก pause และไม่สามารถรับ traffic ได้
ทำไมต้องดูตอนนี้
ฝั่ง PostgreSQL upstream ระบุ EOL ของ Postgres 14 เป็นวันที่ 12 พฤศจิกายน 2026 ดังนั้นเส้นตายของ Supabase มาก่อน สำหรับ managed platform ถือว่าเข้าใจได้ แต่ทีม product ต้องเช็ก dependency จริงก่อนถึงวันนั้น
Official references to verify before acting: Supabase changelog, Supabase upgrade guide, and PostgreSQL 14 EOL notice.
อะไรเปลี่ยนไป
เอกสาร Supabase แนะนำ in-place upgrade ผ่าน `pg_upgrade` สำหรับหลายโปรเจกต์ วิธีนี้มักเร็วกว่า pause and restore แต่ยังมี downtime และต้องตรวจแอปหลังอัปเกรด
| Surface | Example | Why it matters |
|---|---|---|
| Version | `select version();` | Do not rely on memory or project age. |
| Extensions | plv8, timescaledb, pgjwt, pg_cron | Extension compatibility decides whether automation is safe. |
| Roles | custom login roles | Passwords for custom roles may need manual handling. |
| Replication | logical replication slots | Slots may need to be recreated after upgrade. |
| Validation | auth, RLS, jobs, webhooks | Application smoke tests catch what platform checks cannot. |
สัญญาณจากชุมชน
เสียงจาก community กังวลเรื่อง extension, `pg_cron`, custom role, replication slot และ integration ภายนอก สิ่งเหล่านี้ไม่ใช่แหล่งข้อมูลนโยบาย แต่เป็นสัญญาณว่าจุดเสี่ยงจริงอยู่ตรงไหน
Community migration discussions are useful as narrative signals, but the operational policy should be checked against Supabase’s official changelog and docs.
ผลต่อ dev และ ops
เริ่มจาก `select version();` แล้วทำ inventory ของ extension, role, job, replication และ client ภายนอก ทดสอบใน staging หรือสำเนาที่ restore แล้ว เตรียม smoke test และเกณฑ์ rollback
สิ่งที่ควรทำตอนนี้
Upgrade readiness checklist
✓รันและบันทึก `select version();`
✓ตรวจ extension, `pg_cron`, role และ password
✓จด replication slot และ client ภายนอก
✓ทดสอบใน staging หรือสำเนาที่ restore
✓เตรียม smoke test สำหรับ auth, RLS, webhook, job, admin
✓กำหนด downtime, rollback และช่องทาง support
โปรเจกต์เล็กอาจปล่อย auto-upgrade ได้ แต่ระบบ production ต้องตรวจ contract ของแอปเอง เพราะ platform ไม่รู้ว่า flow ไหนสำคัญและ integration ไหนเปราะบาง
ความเสี่ยงและข้อโต้แย้ง
โปรเจกต์เล็กอาจปล่อย auto-upgrade ได้ แต่ระบบ production ต้องตรวจ contract ของแอปเอง เพราะ platform ไม่รู้ว่า flow ไหนสำคัญและ integration ไหนเปราะบาง