HomeNawan HQ
Memperbaharui Phorge untuk pertama kali
dan masalah tak terduga pun muncul

Jadi saya sudah menggunakan Phorge sejak 2026 awal. Sebagai informasi, Phorge adalah sempalan (fork) dari Phabricator. Berbeda dengan Gitlab, Github, atau Gitea/Forgejo, Phorge ini adalah koleksi aplikasi-aplikasi yang berdiri sendiri seperti repositori (Diffusion), code review (Differential), manajemen tugas/isu (Maniphest), platform blog/diskusi (Phame) yang sedang kamu lihat saat ini serta masih banyak lagi. Sampai postingan ini ditulis saya telah menggunakan Maniphest, Paste, Phriction (wiki), Phame, dan Phurl (pemendek dan markah URL).

Pada 5-6 Agustus, saya memperbaharui Phorge ke branch stabil terbaru (2026.07) untuk pertama kalinya semenjak menghos Phorge. Pembaharuan ini membawa beberapa perubahan yang terdiri dari fitur baru, penyempurnaan antarmuka, dan perbaikan kekutu. Sebagai informasi, saya memasang Phorge tidak menggunakan kontainer tetapi secara manual jadi saya melakukan upgrade dengan mengikuti langkah-langkah di Phorge upgrade documentation. Proses pembaharuan ini saya dokumentasikan sebagai tugas Maniphest T142.

Sampai tahap ketiga dimana saya menjalankan perintah git pull di arcanist dan phorge, semua tampak baik-baik saja. Setelah memastikan git pull berhasil, saya melanjutkan ke tahap selanjutnya yaitu memperbaharui skema basis data. Caranya cukup dengan menjalankan perintah bin/storage upgrade di repositori phorge.

Beberapa saat kemudian, sesuatu yang mengerikan muncul di konsol terminal...

Storage is up to date. Use 'storage status' for details.
Verifying database schemata...
Found no adjustments for schemata.

Target             Error
phabricator_xhpast Missing

 SCHEMATA ERRORS 

The schemata have errors (detailed above) which the adjustment workflow can
not fix.

If you are not developing Phabricator itself, report this issue to the
upstream.

If you are developing Phabricator, these errors usually indicate that your
schema specifications do not agree with the schemata your code actually
builds.

{meme, src=screamcat}

Dari apa yang saya baca dan pahami, perintah bin/storage upgrade komplain soal basis data phabricator_xhpast yang hilang atau tidak ada. Hal yang pertama kali saya lakukan adalah mengecek apakah basis data tersebut benar-benar tidak ada.

nawan@narayana:~$ mysql -u phorge -p -h localhost phabricator_xhpast -e "SHOW TABLES LIKE 'phpast_parsetree';"
Enter password: 
+-------------------------------------------------+
| Tables_in_phabricator_xhpast (phpast_parsetree) |
+-------------------------------------------------+
| phpast_parsetree                                |
+-------------------------------------------------+

Lihat? Basis data phabricator_xhpast jelas ada dan bisa diakses. Tapi kenapa saat menjalankan bin/storage upgrade, terjadi error bahwa phabricator_xhpast hilang atau tidak ada? AI? Saya sudah coba bertanya menggunakan Claude tapi malah berhalusinasi dengan memberikan solusi yang benar-benar tidak masuk akal seperti menghapus basis data phabricator_xhpast. Saat itu waktu sudah larut dan saya tidak mau mengawakutu lebih lanjut, jadi saya mengetikkan perintah berikut ke terminal:

bin/storage destroy

{meme, src=nuke, below="THE END"}

Tenang, saya cuma bercanda, hehe. Saya sudah menyiapkan cadangan sebelum menjatuhkan bom tentu saja. Ini bisa dilakukan dengan menjalankan perintah ./bin/storage dump --compress --output backup.sql.gz.

Saya lalu menjalankan bin/storage upgrade lagi untuk membuat basis data yang baru. Kemudian saya mengimpor data dari cadangan yang telah ada dengan menjalankan gunzip -c backup.sql.gz | sudo mysql. Tak lupa saya menjalankan bin/storage upgrade lagi untuk memastikan bahwa tidak ada masalah. Sungguh beruntung, galat tadi sudah tidak muncuk lagi. Saya kemudian menjalankan kembali daemon dengan systemctl start phorge-phd dan systemctl start phorge-aphlict, tak lupa saya menjalankan kembali php-fpm dan nginx.

Saat yang ditunggu-tunggu pun telah tiba. Sebuah momen penentuan.

{meme, src=beluga, below="IT WORKS"}

Jika kamu sedang membaca postingan blog ini, ingatlah bahwa postingan blog ini ditenagai oleh Phorge versi stabil yang paling terkini: 2026.07.

Kalau kalian melihat error di atas, dianjurkan untuk melaporkan itu ke upstream. Saya mungkin bakal melaporkannya ke upstream. Namun untuk sekarang setidaknya instance Phorge saya berjalan dengan lancar.
Written by nawan on Aug 7 2026, 18:56.
Benevolent Dictactor
Projects
Subscribers
None

Event Timeline