What if you could turn
thousands of lines of code into
simple queries?

CHAR(11) finished somewhen in the night leading to today, if you consider the social events to be part of it, which I definitely do. This conference has been a very good one, both on the organisation side of things and of course for its content. It began with a perspective about the evolution of replication solutions, by Jan Wieck himself. In some way Skytools is an evolution of Slony, in the sense that it reuses the same concepts, a part of the design, and even share bits of the implementation (like the txid_snapshot datatype that were added in PostgreSQL 8.


I wrote a book!


Most of you are probably reading my posts directly in their RSS reader tools (mine is gnus thanks to the Gwene service), so you probably missed it, but I just pushed a whole new version of my website, still using Emacs Muse as the engine. My setup is tentatively called tapoueh.el and browsable online. It consists of some tweaks on top of Muse, so that I can enjoy tags and proper rss support.


La semaine prochaine déjà se tient CHAR(11), la conférence spécialisée sur le Clustering, la Haute Disponibilité et la Réplication avec PostgreSQL. C’est en Europe, à Cambridge cette fois, et c’est en anglais même si plusieurs compatriotes seront dans l’assistance. Si vous n’avez pas encore jeté un œil au programme, je vous encourage à le faire. Même si vous n’aviez pas prévu de venir… parce qu’il y a de quoi vous faire changer d’avis !


We still have this problem to solve with extensions and their packaging. How to best organize things so that your extension is compatible with before 9.1 and 9.1 and following releases of PostgreSQL? Well, I had to do it for the ip4r contribution, and I wanted the following to happen: dpkg-deb: building package `postgresql-8.3-ip4r' ... dpkg-deb: building package `postgresql-8.4-ip4r' ... dpkg-deb: building package `postgresql-9.0-ip4r' ... dpkg-deb: building package `postgresql-9.1-ip4r' ... And here’s a simple enough way to achieve that.


Don't be afraid of 'cl

In this blog article, you’re shown a quite long function that loop through your buffers to find out if any of them is associated with a file whose full name includes "projects". Well, you should not be afraid of using cl: (require 'cl) (loop for b being the buffers when (string-match "projects" (or (buffer-file-name b) "")) return t) If you want to collect the list of buffers whose name matches your test, then replace return t by collect b and you’re done.

Dimitri Fontaine

PostgreSQL Major Contributor

Open Source Software Engineer

France