The worlds smallest Slony cluster?

We recently updated on of our Slony clusters. I think it at least used to qualify as one of the worlds smallest ones:

  • Two nodes (obvious minimum)
  • one database (that's a given)
  • with one table
  • with one column
  • with one row

Now, we recently doubled the size of this cluster. It now has a whopping two columns in the table. The second column being updated by a trigger, so it's still only one column updated by the end user (well, application). But it's two columns to be replicated!

So what does this prove? Really, not much, but at least: Slony certainly scales "downward" just fine. It feels like a bit overhead to set it up for something like this, but it works just fine. Even in a small database, triggers can be very useful - regardless of what the documentation of a certain other database used to say before... And even in a trivial case like this, statement based replication simply does not work reliably*. You need something that's data based - something that the same other database is actually recognizing now and will be including the next version...

October - a month of conferences

Sorry, Devrim. And others. It's been a long time since my last blog post - can't really come up with a reasonable excuse, so I'll just come up with a post instead.

Anyway, on to the actual post. Unlike some people who have said that autumn is a "downtime" period for conferences, I've managed to fill October almost solidly with conferences of PostgreSQL interest. Here's a quick rundown:

Open Source Days, Copenhagen, Denmark : October 3-4. This is the old Linuxforum conference that has been reborn under a new name, and moved from winter to autumn. Always a great conference, and I really enjoy going. I'll be doing a talk on PostgreSQL, and my company will also be well represented in the exhibitors area.

PostgreSQL Conference West, Portland, Oregon, USA : October 10-12. The next in the "JD series" of community conferences in the US. They always draw a lot of PostgreSQL talent, so I'm really looking forward to this one. This time around it will also be including a code sprint - let's see how that will work out. I'll be doing my talk on fulltext search (for search.postgresql.org), and I think JD has some further plans as well.

pgDay.EU/pgDay.IT, Prato, Italy : October 17-18. This is the European PostgreSQL conference this year. Everybody interested in PostgreSQL in Europe really should consider going! There's a whole bunch of very interesting talks lined up both in English and Italian. I'll be doing a keynote together with Dave Page, and I'm generally fairly involved in the organization.

FSCONS, Gothemburg, Sweden : October 24-26. Free Society Conference and Nordic Summit, second year around. Last year I was there just as a visitor, this year I'll be doing a PostgreSQL talk. Arranged by FSF Europe, CC and Wikimedia it seems to be drawing a lot of interesting free software people from around Scandinavia (and elsewhere in Europe as well).

If you're going to be around any of these places, be sure to go to the conferences! And if you're at the conferences, look me up for a chat (or a beer :-P)

It'll be a busy month (there's actual work to be done in between the conferences as well), but I expect it to be lots of fun!

Welcome PostgreSQL Europe

So, it's now official. Graciously folded into Selenas lightning talk, we have now announced that the legal forming of PostgreSQL Europe has finally come through. All the government bureaucracy is now finally done, and we are a registered european non-profit.

What this means in reality is that we now have a lot of actual work to do, and can no longer hide behind this fact. Until then, let's get working on the wiki or just fill our mailinglist with good ideas!

pgCon day 3

align="right" vspace="10" hspace="10"I'm not going to go into any talk specifics, but just say that day 3 was the first day of regular talks, and it had a lot of very good talks. After that, we had the EnterpriseDB dinner party, which was also very good. They clearly won the dinner-party race over Yahoo! - no contest!

I've uploaded pictures from this day as well as the dinner party. They're all in the [ gallery]. Most of the pictures are tagged with names - but I'd love to have some help going through the ones that aren't and fill in the proper names, since I don't know everybody. Feel free to help out by just sending me an email with names that are in pictures which aren't categorized.

The picture attached to this post is one I received from Bruce's boss based on one of my photos. No further comments needed I think.

Right now in Peters talk about our project management and release processes. I actually agree with most of them, which is a good sign - we think at least almost the same on how things are.

pgCon day 2

[HTML_REMOVED] So I didn't get around to posting the first day. And the second day I actually left the post in drafts and forgot to publish it, only remembering now on the morning of the third day. Ah, well, here's a slightly updated one... [HTML_REMOVED]

Yesterday was the developer meeting day for those of us who were involved in that, and a tutorial days for those who weren't. The developer meeting was basically a meetup between around 25 of the most active PostgreSQL developers, talking about. Well. Developer stuff. I'd say it was a big success. While we obviously didn't end up committing a bunch of things, several big things were discussed in person (and during the breaks), but most importantly we once again got a chance for some face-to-face time with our fellow developers - which I think is worth a lot. It helped a lot that almost everybody who's done a lot lately was there. Not quite everybody, but closer than I thought. The brain-trust in that room yesterday was quite amazing...

After that, it was a Yahoo! party in the evening, which supposedly had food and drinks. I only ever saw the drinks from that part and had to buy my own food (along with a couple of others), but hey, free drinks is not something I'm going to complain about. I forgot the cable to my camera, but as soon as I find one I'll try to get some pictures up... Oh, the occassion? They now do huge databases based on PostgreSQL.

Time to head off to breakfast in half an hour now, and then on to the keynote. I hope to sneak an announcement in there, so I guess I have to get there a tiny bit early.

PGcon first photos!

align="right"

As usual, I forgot my USB cable. As is becoming usual, Selena came to my rescue and lent me hers so I got the pictures up. The first set is up on my [ gallery] with some tagging and stuff.

More photos to come as the conference proceeds. But for now, I obviously have to post the one of Steven falling asleep at the table long before midnight... Kinda ruins his attempt to build a reputation, I think... But it's hard work being at a PostgreSQL conference - imagine how it was for those of us working at the developer meeting, Steven!

A new MySQL gotcha

At least it's new for me, and it's not on the list. Bugged a colleague of mine today, and we were both very surprised for a while until we figured it out. Ok, it's not very complex, but the deal was that:

SELECT CAST(1 as CHAR)

works, but

SELECT CAST (1 as CHAR)

does not (syntax error!)

Now, CAST is already horribly limited in MySQL (who came up with the idea that you shouldn't be able to cast to all available types if it's reasonable to do the conversion?! Like from int to text...), but this is just too much. Since when does whitespace before a parenthesis matter in SQL?! Sheesh...

Yet another reason to prefer PostgreSQL...

Not quite open source

I found a couple of posts over on Planet MySQL today about some new announcement from the dolphin-herders. Apparantly, the Sun/MySQL combination is now starting to push at least some features for Enterprise customers only. AFAIK this isn't entirely new, since they've had some tools previously only available to enterprise customers, but I guess this would be a first for actual server code. (Though the way patches are moved between Enterprise and Community never really made sense to me, that's probably because I didn't study it in enough detail)

From what I can tell, this puts MySQL more towards the situation that PostgreSQL has with EnterpriseDB (and their now renamed product Postgres Plus Advanced Server) and some other companies. This is a proprietary product that sits on top of an open source foundation that is PostgreSQL. Now, EnterpriseDB initially marketed this product as opensource - which was incorrect, and they got quite a bit of bad press about it. The question is, what will Sun/MySQL do now. Will they continue to market their Enterprise product as Open Source, which it obviously isn't, or will they change that?

It is also interesting to note that this would not be possible if MySQL was licensed as pure GPL. With the current model, this is only possible for Sun/MySQL to do, and no other company. Unlike PostgreSQL which is BSD licensed, and allows any company to create this kind of proprietary derived product. If I was a contributor to MySQL (which I'm not), I would consider this quite unfair. But that's what you get with the dual licensing model used by MySQL, and this is why contributors have to sign away their rights to Sun/MySQL. It's not surprising to me that this happens, and it's one of the reasons I haven't liked the MySQL licensing model from the start. The other side of the coin would be a pure GPL license, which would not allow anybody at all to create a proprietary derived product - but that's a whole different debate to take on...

So is this a dealbreaker? Well, I don't know exactly which features they are talking about in this case (since I'm not a Sun/MySQL partner), but there was talk of it being things around backups. IMHO, such extremely core functionality really should be in the main product - which is how PostgreSQL has it today. But more importantly, if this is the new path Sun/MySQL is going to be heading down with their products, I can see how that will be a problem for a number of their customers.

And if you're one of them - you're always welcome to cross over and join us over here by the elephant...

PostgreSQL Conference East - day 2

So I'm here at PostgreSQL Conference East in College Park, MD. Didn't have time to do any blogging yesterday, so someone managed to blog about it before me... JD somehow managed to make me one of the semi-official camera-in-your-face people (photographer, if that wasn't painfully clear), so I've also been running around getting a bunch of pictures so far. They'll be up on my galleries later when I've managed to look through them a bit to remove the most crappy ones - and I'll try to get them onto the shared photo stream as well.

So far, the conference has been very good. Most talks I've been to are really high quality and interesting stuff, and the organization has worked very well (except possibly for Bruce sending Denis off to the wrong end of campus, but he made it in time for dinner so things ended up fine).

Starting at the day before yesterday, there was a "small evening event" with food and drinks at Chevys. There were quite a number of people there for being a "small" event... But it was all good and fun. JD managed to convince the staff at the place that it was David Fetters birthday, so he got both singing, icecream (I think it was) and a sombrero... During the panel today it was confirmed that his actual birthday is sometime in october, so it apparantly wasn't even close.

http://www.smugmug.com/photos/272240753_DjKS4-S.jpg alt="Josh Drake keynote" align="right" hspace="2" vspace="4" /Yesterday started with Josh Drake's keynote about the state of the community. I followed that up with a talk about PostgreSQL from Java, which was a good set of information for a total Java newbie (that's me!) Last talk before lunch was "Inside the PostgreSQL Buffer Cache" by Greg Smith. A very useful talk about measuring and tuning this very central part of PostgreSQL. I expected it to be interesting, but I'm also taking away some very direct hints on what to look at and how to interpret it that I didn't really expect.

After lunch I started with Greg Sabino Mullanes talk about the different replication options available for PostgreSQL, which also got some pretty good discussion going. Followed that up with "logic and databases", which I'll admit I spent about half of in an interesting discussion i the hallway instead. But I'm sure it was good. Finished off the day with "Postmodern PostgreSQL application development". That turned out to be mainly about ORM in Python, which honestly didn't really interest me, but I did take away some good tips about python/qt which I will obviously have to look into a bit in the future. And it did create a bit of interesting discussion with David on the way back to the hotel later.

http://www.smugmug.com/photos/272295095_razSs-S.jpg alt="EDB sponsored dinner" title="There is a story behind this situation. But that will remain between those present..." align="left" vspace="4" /After stopping by the hotel to drop off some things, it was off to the EnterpriseDB sponsored dinner and drinks party at Jasper's. Good food, decent drinks (c'mon, this is still america, you have to actually search harder to find a place with good beer options), and some good discussion with both new and "old" people. Oh, and David Fetter had a birthday again so the staff got to sing for him...

So far today we started with the panel discussion which was decent, I'd say. It could've been better, but it could also have been a lot worse. So no complaints in general. After that, we did a proper group photo (it will be available on the website as usual later, with names on it). Right now I'm in "Portable Scale-out Benchmarking for PostgreSQL" with Robert Hodges. Did a quick stop in the XML talk, but since I'm not really interested in that stuff right now, I moved on.

FOSDEM day 2

...is not over yet. There are still things to go. But I've finished off my two talks (one on "win32 development in a unix project" (no, there was no code at all in this) and one on "building search.postgresql.org" (very little code in this one). I think they went reasonably well, we'll see what others say when I check around some more...

Not quite as many people came to our booth today, at least not the time I was there, but there were still a lot of people. We had more talks instead, so I'd still classify the day as a big success.

Gabriele kicked off in the morning with an interesting talk, that unfortunately didn't have as many visitors as it deserved, because it was early in the morning (9AM).

Bruce had a talk about the PostgreSQL future, which probably wasn't what people expected. I think most people were expecting a roadmap for 8.4, which isn't at all what we received - but it was still a good talk.

Susanne did her encoding talk and a talk on how people can contribute to the PostgreSQL community. Unfortunately, I missed both of those. David also had a talk about DBI-link that I also missed - some people had to man the booth, and since there was no scheduled time for lunch some talks simply had to be skipped.

Simon has had one talk, focusing on enterprise features that he will be working on to get into the next version(s) of PostgreSQL, and he just started his second talk which is on the topic of high availability. He also arranged a short "roundtable discussion" with the BSD folks on what they could do in the OS to help PostgreSQL. Nothing concrete from such a short meeting of course, but hopefully it laid some foundation for more work in the future.

We had an auction for one of the big elephants, which really didn't end up where we expected it - because we had only a single bidder. Probably the timing could've been a lot better since there were talks going on - we need to think about that one next time.

In about half an hour it's time for the vote for the first board of directors for the new PostgreSQL Europe organization. Going to be interesting to see how that works out, and of course what the end result of it is.

Conferences

I speak at and organize conferences around Open Source in general and PostgreSQL in particular.

Upcoming

PGConf.UK
Jul 3, 2018
London, UK
PGDay.Amsterdam
Jul 12, 2018
Amsterdam, Netherlands
Prague PostgreSQL Meetup August
Aug 27, 2018
Prague, Czech Republic
Postgres Open 2018
Sep 5-7, 2018
San Francisco, USA
PGConf.EU 2018
Oct 23-26, 2018
Lisbon, Portugal

Past

PGCon 2018
May 29-Jun 1, 2018
Ottawa, Canada
PGConf.DE 2018
Apr 13, 2018
Berlin, Germany
PGDay.paris 2018
Mar 15, 2018
Paris, France
Nordic PGDay 2018
Mar 13, 2018
Oslo, Norway
ConFoo 2018
Mar 7-9, 2018
Montreal, Canada
More past conferences