Postgres Migration
After more than 20 years on MySQL, the NTP Pool is moving its primary database1 to PostgreSQL. The beta site switches over first, this weekend.
Postgres has been the default open source database for years now. It works better with the Go tools the newer code is built on, and it’s easier to run on our Kubernetes clusters.
The conversion leaned heavily on LLMs and AI coding agents. Most of the work was in the website, which has by far the most legacy code and the most varied ways of talking to the database. Other parts, like the monitoring code, needed much less work.
The beta site will be down for part of the weekend. It might stay unreliable for a while after that as we work through the issues that development and testing didn’t find.
Beta is separate from production, except that the same logins work there. Its data came from the MySQL-based beta site. If you have a few minutes, log in and poke around your servers. Report anything that looks wrong on the community forum.
Once the beta site is stable, we’ll move the production system over. Depending on how beta goes, that could be in the next few weeks or take a couple of months. DNS and NTP service won’t be affected. The website, management interface, and monitoring will need a maintenance window, which we’ll announce ahead of time.
Questions or want to follow along? Join the announcements forum.
-
The system also uses ClickHouse and Kafka extensively; those aren’t changing. ↩︎