This year I attended PG East in Philadelphia. This is the first time I’ve attended a ”postgresqlconference.org” conference (known in some circles as a jdcon). The conference was both well-organized and well attended (about 160 people). It was held at the Radison Warick hotel in downtown Philadelphia. The accommodations where a few notches classier than the dorm rooms of PGCon (not that I have anything against dorm rooms). The conference audience included PostgresSQL users of all levels from committers to a few attendees that seemed to never have used Postgresql.
It was nice to talk to people who’ve been quietly using PostgreSQL in mid to large companies and see how the complaints users at conferences have changed over the year. Just a few years ago most PostgreSQL users seemed to be complaining about the pain felt around issues related to vacuuming (myself included). The only time I recall someone at this conference really mention vacuuming problems was when we were getting nostalgic and remembering how things used to be in the 7.x days. Common complaints today seem to be related to replication issues (ie Slony being hard to use) and uneasiness around upgrade paths.
One of the talks I was most looking forward to was from a pair of guys from the FAA airport management office. The FAA has converted their airport management database from Oracle Spatial to PostGIS. This database stores information about the layout of airports (runways, taxiways, buildings, airport services etc..) from surveys. This data is then used by people making various charts for the aviation community. They converted and deployed their mapping application + database from Oracle spatial to PostGIS in around 6 months. They are also working on a Digital NOTAM service based on PostGIS. The FAA seems to like PostgreSQL so much that they’ve declared that all new developmentprojects in the FAA AIM office must use PostgreSQL as the primary database. This shows how PostgreSQL adoption is coming along.
The upcoming release 9.0 was the topic of many conversations at the conference. Aside from hot-standby I think one of the most features in the new release that will push adoption is ”exclusion constraints”. Jeff Davis developed the exclusion constraint support for 9.0 and gave a user-level talk on his work. Exclusion constraints allows you to solve the room scheduling problem. Try to model (in your SQL database) bookings of a hotel conference room where a room can be booked from some arbitrary start time until an end time. How do you ensure that a single room can’t be booked by two people for an overlapping time period? Exclusion constraints allow you to say things like a database table storing room bookings, can’t have more than one bookings with overlapping time periods for the same room. This problem comes up all the time, and is annoying to work around with the traditional SQL bag of tools.