Share Tweet Share





One of the things I spoke about last year, and this year again at the Developer meeting, was what should be our highest priorities for technical development to drive PostgreSQL adoption. That is, what features would make PostgreSQL attractive to the greatest number of users, or remove obstacles to adoption for the most people. Yeah, that’s strategic thinking there. Get used to it; we’ll be doing more in the future. Note, also, that I’m not saying technical features are the most important things driving PostgreSQL adoption. Community outreach, user groups, translations, business software support, open source project dependencies, documentation and PR all have a huge effect on adoption, likely more than any database features. However, the Global Development Group needs to decide what to develop, so here goes. Before version 8.3, the top 5 priorities were:

Easy installation of Postgres + accessories Simple built-in replication Getting rid of VACUUM Upgrade-in-place Driver quality & maintenance

8.3 added HOT and multi-threaded autovacuum, and suddenly VACUUM became something most people set on auto and ignored. 8.4’s Visibility Map and FSM auto-tuning will result in VACUUM becoming even more of a vanishing issue. Further, EnterpriseDB contributed the OneClick installer, and the various Linux distros got better at keeping PostgreSQL packages complete and up to date. As a result, items #1 and #3, while not gone entirely, dropped off the priority list. So here’s where we are going into 8.4 Beta:

Simple built-in replication Upgrade-in-place Administration & Monitoring Tools Driver Quality & Maintenance Modules & Extension Management

Now, for 8.4 Bruce is deploying pg_migrator and Zdenek’s work on pg_upgrade continues. Simon Riggs is going to continue work on Hot Standby (presuming he can find funding) for 8.5, and the NTT guys will finish the synchronous replication work. This will knock out the top two items. So, the question then becomes, what are our top 5 priorities for after 8.5? Three are still there:

Administration & Monitoring Tools Driver Quality & Maintenance Modules & Extension Management

But for further priorities we have quite a diversity of major blockers and new user enablers, and it’s pretty hard to tell which ones will make the most difference to the largest number of people. So I’d like folks to vote (in the comments) for their favorites:

Per-column locale/collation

Windows user experience

“Hostability” features (cloud platform)

Very Large Database features

OLTP Performance

… or something else? Tell me, below, what would make the most difference for you, your boss, or organizations you know using PostgreSQL for their projects? You can also vote on these on the PostgreSQL community survey.