Return of Pagila

In early September, I gave a live demo of Postgres 10 replication at the Postgres Open conference in California. As part of the prep work, I dusted off one of my old projects… “Pagila”. For those unfamiliar, Pagila was a port of the Sakila sample database, created by Mike Hillyer for MySQL. The goal of the project was to provide a simple schema with similarities to other systems showcasing different Postgres features. Originally I hosted it on PgFoundry back in the day and for the most part it has lived there quietly, until now.

One of the reasons Postgres 10 is significant for Pagila is that Pagila contains an example partitioned table, and as many have heard, Postgres 10 contains an initial release of simplified partitioning capabilities. While not particularly useful (yet) compared to the current partitioning capabilities, for the purposes of showing off examples, it was time to update the Pagila schema to show off this new feature. And given I had to do that work, I thought maybe it was time to make a new “official” release.

So, I’ve now created a new Pagila project page on Github. Unfortunately I was unable to get a full copy of the pervious versions from PgFoundry to do a full import, but I did have some copies of older releases lying around, so I used those to recreate the history in git for past branches. This means if you need a version of the schema that works on postgres 9.x, you can checkout one of the older branches. Once Postgres 10 is finally released, I’ll go ahead an tag/branch a version 10 release to complement it. In the mean time, please feel free to play with this, and if you’d like to contribute, you can find me on the Postgres Slack Team or submit a pull request through Github.

Postgres 9.4 - a First Look

Today I gave a talk at pgcon about the upcoming features in 9.4. As the beta was just last week, I think it’s a fairly accurate representation of what should ultimately end up in 9.4. Of course, in the course of a talk I couldn’t cover everything, but I think it should give a good primer for anyone looking to upgrade.

I want to give a big thanks to Magnus Hagander and Dave Page, who did talk on earlier versions of 9.4, which was invaluable in helping me put together my own slide deck. Also thank to Michael Paquier and Hiekki Linnikagas who provided supplemental materials. Also no one could do these talks without the work of depesz; I would strongly encourage those looking for more information on 9.4 to check out his blog. Finally, I’d like to thank all of the Postgres Developers who have worked on the 9.4 release, without whom we wouldn’t have a release.

Natural Consequence

This weekend I noticed I hadn’t updated the bio on my blog. It’s a one letter change, from COO to CEO, but there’s a lot tied up in that letter. When I started at OmniTI I would never guessed that I would end up here. All I was looking for was Bigger and Badder Postgres challenges to work on. But maybe I should have seen it coming.

One of the driving factors in my career has been my desire to work on the most important part of whatever it was I was working on. Early on this lead me to web development as a means to share knowledge between team members. After awhile, I came to the conclusion that Usability and Front End web work were the most important; those were the areas that directly impacted customer/users, and was more important than the quality of the code or the systems running things on. Get that wrong and nothing else matters. Eventually I ended up doing a 180 and started focusing on databases. It wasn’t that the database was important, but the data inside those systems was the thing I determined was the most important thing for a business. You can always replace your front end, your application code, even the servers themselves, but lose the customer data, and your done.

As time went by, my thoughts changed here as well. I still think data is the one thing that is irreplaceable, but as time went on, eventually I sought out larger challenges and more responsibility. When Theo and I discussed taking the COO role 2 years ago, I had recognized that we needed someone who could work across the different groups within OmniTI and help people to achieve thier goals. It was an area I thought I could have some impact, so I stepped into the role. At the time I didn’t worry about the next step, but if you think about this philosophy of taking on the most important work, and take it to it’s natural consequence, the role of CEO should have been more obvious. Maybe not at OmniTI, but at some point it was bound to happen.

Less Alarming Alerts

A week or so ago, I gave my talk, ”Less Alarming Alerts!”, at Velocity Europe. The presentation covers several issues around the process of monitoring, alerting, and waking people up at 2 in the morning cause things break. I find that a lot of people in web operations suffer from excessive paging going on, as it’s far too easy to add checks than it is to remove them; this talk discusses some of how we approach this problem when helping people manage their operations. Special thanks to the DevOpsDC folks for letting me do a first run back in October. You can grab the slides from the Velocity site, or view them on slideshare.

New GPG Key

A few weeks ago I finally got around to making a new gpg key. My old key was created 9 years ago at OSCon, and I remember at the time picking an “extra large key size” (1024) figuring that would last me a really long time. I guess 9 years is a really long time in computers, but 1024 is no longer good enough, so a new, stronger key seemed warranted. At the moment, both keys will work, but the newer one should be used going forward. It’s already been signed by a number of folks, so feel free to grab it from a public server if you want.

Past, Present, and Pachyderm

I’m currently in Germany, having given my talk on Postgres 9.3 at PGConf DE (and last week at PGConf EU).

Prior to that, I recently gave a talk at the All Things Open conference entitled “Past, Present, and Pachyderm”. The original idea for the talk was to give a highlight of new features coming in Postgres 9.3, however we took a slightly different approach for the ATO2013 crowd, providing some history and discussion around the Postgres project, as well as taking a look at some ideas about future development and direction.

The talk went quite well, and I think really struck a good balance for speaking to a less Postgres focused crowd than the 9.3 talks I have given at Postgres specific conferences.

MariaDB and the Quest for Oracle Freedom

People really don’t like Oracle. Enough so that SkySQL just got $20 Million in funding from Intel to help it continue to build a MySQL alternative. Now personally I don’t have the hatred that a lot of people do for Oracle, but when I look at the pricing and service offerings around Oracle’s database, Solaris operating system, and even things like ATG, I know that we can offer them comperable solutions at half the price, with far better service, so I get why people want to try to find alternatives to Oracle.

But here is what I don’t get. This week I went to the All Things Open conference and while I was there, I happened to catch the tail end of a SkySQL talk on new MariaDB features. One of the features that he was describing apparently has issues if you work with MyISAM tables, so he asked how many people in the crowd used MyISAM. Not a single person raised their hand. For most database folks, this isn’t surprising; for most people doing traditional RDBMS work, you want an MVCC based system of some kind, so people using InnoDB seems like the logical choice. The problem here is, if your community is built around the idea of being free of Oracle, I think there is a problem if your user base is completely built around a technology still owned by Oracle.

So what are these investors buying with thier $20 million? If you are trying to secure the future of your database choice, I think this is a swing and a miss. Sure, MariaDB of today is better than MySQL of back then, but from a technology control standpoint, all you’ve done is buy yourself a ticket back to 2005, when Oracle first purchased Innobase and left MySQL scrambling. Any argument that you can make that the MariaDB community doesn’t have to worry about this is basically an argument for why MySQL users might as well stick with Oracle MySQL. I suppose that $20 million might buy another attempt at a new storage engine, but we’ve been down that road before, and it’s not pretty.

PS. If you’ve got $20 million and a desire to help Solaris users get free of Oracle, the OmniOS team would be happy to cash that check.

And Away We Go

Howdy folks. I’m currently in Salt Lake City, the first of many weeks of out of town travel coming up. OK, technically that started last week, when Denish and I traveled up to New York City, but that was by train, which is way more pleasent than air travel. Anyway I’ll be in SLC the next couple days, working with a customer to assess their current and future architecture and discuss ways to help them improve thier operations and developement processes.

Next week I’ll be heading to North Carolina to speak at the All Things Open conference. While there I’ll be stopping by the Triangle PUG, for a re-launch / kick-off get together. While I haven’t been to the RDU area for several years, I do know several people in the area so hopefully it will give me a chance to catch up some some old friends.

After that I’ll be headed to Dublin, Ireland, where I am speaking at PGConf.EU. While I have spoken in Europe & Russia several times, it will be my first Postgres conference there, so hopefully I’ll be able to cross paths with a number of the European community members who haven’t had the opportunity to make it to Canada. From there I head to Oberhaoussen, Germany, to talk at PGConf.DE. I’ve not been to Germany since I was a kid, so while I am bummed that I am missing out on Octoberfest, hopefully it will be a good time.

Wrapping all that up I’ll be heading to London to speak at Velocity EU, giving the talk I previewed at this months DevOpsDC meeting on “Less Alarming Alerts”. I really enjoyed Velocity EU and I’m happy to be heading back this year.

OmniTI has been doing quite a bit more business in Europe over the past year, so during my travels I’m planning to do a couple of client visits and meeting up with various friends and my newest co-worker Vasilis. If you’re planning to be at any of these events I hope you’ll stop and say hi.

What’s to See in Postgres 9.3 Slide Deck

Last week I gave a version of my “Postgres 9.3” talk at PGCon. The talk covers a number of new features that are planned for the upcoming version of Postgres. A lot of people had asked for a copy of the slides, but I’ve not found a good way to generate pdf’s from the service I used to make the slides, so hopefully an online link will work for now. Postgres 9.3, via

Note: The slides are laid out in a grid, so when browsing the slides, scroll down in each “section” until you get to the bottom, then scroll to the side to go to the top of the next section.

PS. If you are working for, this is something you really should add in the pro version of your tool.

PPS. If you’d be interested in having me present this talk at your local meetup, please send me an email.

What Defines a Guru?

I recently wrote an entry for OmniTI’s Seeds Blog. The article talks about the idea of pattern matching vs. troubleshooting, and how those ideas relate to what people consider a “Tech Guru”. I hope you’ll check it out.