Debian 13 Merusak PostgreSQL dengan Nama Timezone US/* yang Sudah Usang

Tim Komunitas BigGo
Debian 13 Merusak PostgreSQL dengan Nama Timezone US/* yang Sudah Usang

Masalah kompatibilitas yang signifikan telah muncul bagi pengguna PostgreSQL yang melakukan upgrade ke Debian 13, terutama mempengaruhi mereka yang berada di Amerika dan mengandalkan konfigurasi timezone legacy US/*. Masalah ini berasal dari keputusan Debian untuk memindahkan nama timezone yang sudah usang ke paket terpisah, menyebabkan PostgreSQL gagal startup dengan error konfigurasi.

Akar Masalah Sudah Ada Sejak Puluhan Tahun Lalu

Masalah ini dapat ditelusuri kembali ke perubahan dalam database timezone Internet Assigned Numbers Authority ( IANA ) yang berasal dari tahun 1990-an. Awalnya, timezone menggunakan nama seperti US/Pacific dan US/Eastern, tetapi konvensi penamaan bergeser ke format benua/kota seperti America/Los_Angeles dan America/New_York. Nama US/* yang lama telah ditandai sebagai usang sejak 1995 dan dipindahkan ke file kompatibilitas mundur dalam database timezone.

Anggota komunitas menunjukkan bahwa penghentian dukungan ini telah didokumentasikan selama hampir tiga dekade. Namun, nama legacy tersebut tetap banyak digunakan karena sifatnya yang intuitif dan fakta bahwa nama-nama tersebut terus berfungsi tanpa peringatan yang terlihat kepada pengguna.

Nama Zona Waktu yang Terpengaruh

  • US/Pacific → America/Los_Angeles
  • US/Eastern → America/New_York
  • US/Central → America/Chicago
  • US/Mountain → America/Denver
  • Canada/→ setara dengan America/
  • Nama zona waktu berbasis negara lainnya yang sudah usang

Kegagalan Diam-diam dan Dokumentasi yang Hilang

Yang membuat ini sangat bermasalah adalah kurangnya peringatan yang menonjol selama proses upgrade. Pengguna melaporkan bahwa PostgreSQL gagal untuk memulai dengan pesan error yang sulit dipahami tentang parameter timezone yang tidak valid, dan masalah ini tidak disebutkan dalam catatan rilis Debian 13. Hal ini telah menyebabkan frustrasi di antara administrator sistem yang mengharapkan komunikasi yang lebih baik tentang perubahan yang merusak.

Komunitas telah mencatat kesenjangan dokumentasi serupa dalam upgrade Debian lainnya, dengan beberapa pengguna diberitahu untuk memeriksa file NEWS paket individual daripada mengandalkan catatan rilis yang komprehensif. Pendekatan ini memberikan beban yang tidak masuk akal pada pengguna untuk melacak masalah potensial di puluhan paket.

Solusi Praktis dan Workaround

Untuk pengguna yang terkena dampak, beberapa solusi tersedia. Perbaikan paling sederhana adalah menginstal paket tzdata-legacy, yang mengembalikan dukungan untuk nama timezone lama. Alternatifnya, pengguna dapat memperbarui konfigurasi PostgreSQL mereka untuk menggunakan nama timezone America/modern alih-alih yang setara dengan US/ yang sudah usang.

Administrator sistem dapat menggunakan perintah timedatectl list-timezones untuk melihat semua nama timezone yang tersedia di sistem Debian 13 mereka. Ini membantu mengidentifikasi padanan modern yang benar untuk konfigurasi timezone legacy apa pun.

Perintah Perbaikan Cepat

 Install dukungan timezone lama
apt install tzdata-legacy

 Daftar timezone yang tersedia
timedatectl list-timezones

 Periksa timezone saat ini
timedatectl status

Praktik Terbaik Konfigurasi Server

Insiden ini telah memicu diskusi baru tentang manajemen timezone di lingkungan server. Banyak administrator berpengalaman merekomendasikan menjalankan sistem produksi dalam timezone UTC untuk menghindari komplikasi timezone regional ini sepenuhnya. Pendekatan ini menghilangkan seluruh kelas masalah terkait waktu sambil hanya menciptakan ketidaknyamanan kecil untuk tampilan waktu lokal.

Selalu jalankan sistem produksi dalam timezone Etc/UTC. Ini menghilangkan seluruh kelas masalah sambil hanya menciptakan ketidaknyamanan kecil.

Untuk sistem desktop dan aplikasi yang memerlukan tampilan waktu lokal, timezone dapat ditangani di tingkat antarmuka pengguna daripada tingkat sistem, memberikan fleksibilitas yang lebih baik untuk deployment multi-wilayah.

Masalah timezone PostgreSQL berfungsi sebagai pengingat bahwa bahkan fitur usang yang mapan pada akhirnya dapat menyebabkan masalah nyata. Meskipun periode penghentian dukungan 30 tahun mungkin tampak memadai, kurangnya peringatan yang terlihat dan dokumentasi upgrade yang komprehensif telah membuat banyak pengguna terkejut selama migrasi Debian 13 mereka.

Referensi: Debian 13, Postgres, and the US/* time zones