PlanetScale has released Neki in platform preview, a system that distributes Postgres databases across multiple machines while each shard remains a genuine Postgres cluster with one primary and two replicas spread across three availability zones. Applications connect through a Neki router using the standard Postgres wire protocol, so existing drivers, ORMs and connection strings continue to function without modification. Users define shard keys and table grouping through a JSON topology, while schema changes, upgrades, failovers and resharding run as online workflows.
PlanetScale unveiled Neki, a new distributed database built on real Postgres instances running across shards, now available as a platform preview. The company says it drew on eight years of experience running large sharded MySQL clusters to design a system that keeps standard Postgres semantics rather than mimicking compatibility. Neki uses a router that speaks the Postgres wire protocol to direct queries to the appropriate shard.
A developer documented how to revive phpBB 1.4.4, the last pre-fame version of the classic forum software from 2001, so it runs on modern PHP5 and MySQL 4 inside Docker containers. The project required patching a handful of bugs, including a rejected database seeding command, a broken login cookie function, and a crash on empty post timestamps, plus old-school php.ini settings like register_globals. A ready-made docker-compose file and install instructions let anyone spin up the 25-year-old board software locally in minutes.
An engineer upgrading a MySQL database via a replica discovered that a table's auto-incrementing primary key was assigned in a different row order on the replica than on the source. Because six related tables had been migrated to reference these new IDs, one of them ended up pointing to completely wrong rows after the switchover, while the other five happened to remain correct.
A technical breakdown explains why standard periodic MySQL-to-warehouse syncs, which query and diff table snapshots on a schedule, can silently miss deleted rows and intermediate row states between runs while also straining production databases. It contrasts this with Change Data Capture, which reads MySQL's binary log directly to capture every insert, update, and delete in order with complete row data, rather than inferring changes from comparisons.