gleu's blog

Aller au contenu | Aller au menu | Aller à la recherche

pgconf.eu 2011, Amsterdam, jour 2

Première journée des conférences standards, donc gros rush à l'enregistrement. Néanmoins, cela se passe bien. Le fait d'avoir déjà enregistré les personnes venu hier a certainement bien aidé.

DSC_7466.JPG

Magnus Hagander a fait son discours de bienvenue, puis a introduit Ram Mohan de la société Affilias. Ram venait faire la conférence d'ouverture de pgconf.eu 2011. C'est un exercice difficile qui demande beaucoup de travail et je dois dire que Ram s'en est très bien sorti. C'est intéressant, factuel et en même temps motivant. Motivant pour utiliser PostgreSQL mais aussi pour participer à la communauté.

DSC_7470.JPG

Après cette conférence et la pause-café, les conférences ont commencé. Difficile de ne pas trouver une conférence intéressante quand trois salles proposent une conférence chacune pratiquement toutes les heures. En fait, il a surtout été reproché que le choix était difficile à cause de la qualité des conférences et du fait que beaucoup se déroulaient en parallèle. C'est un problème bon à avoir car cela indique que nous ne nous sommes pas trompés dans le choix des conférences.

Malheureusement, faisant parti des organisateurs, je n'ai pas pu voir beaucoup de conférences entières. Je me suis baladé le matin entre les différentes salles de conférences pour prendre des photos. Magnus a eu beaucoup de succès avec sa conférence sur les nouveautés de la version 9.1 : beaucoup d'informations car beaucoup de nouvelles fonctionnalités, avec le point de vue d'un des développeurs majeurs de PostgreSQL.

DSC_7478.JPG

Dave Page a d'ailleurs été dans le détail d'une de ses nouvelles fonctionnalités : SQL/MED.

DSC_7483.JPG

J'avais déjà vu cette conférence, elle est vraiment bien pour comprendre comment implémenter un Foreign Data Wrapper. La conférence de Vincent Picavet sur PostGIS a aussi été bien suivie : PostGIS est vraiment une extension importante dans le monde de PostgreSQL.

DSC_7486.JPG

Quant à Gianni Ciolli, il a osé aborder les fonctions de fenêtrage avec sa bonne humeur habituelle. Difficile quand il s'agit d'un sujet aussi complexe que celui-là.

DSC_7488.JPG

L'après-midi, étant responsable d'une salle de conférences, j'ai pu voir les conférences qui s'y déroulaient entièrement. Gilles Darold a ouvert le bal avec une conférence sur ora2pg, malheureusement en français, ce qui a fait que peu de personnes y ont assisté. Pourtant, beaucoup voulaient venir mais une fois qu'ils ont compris que c'était en français seulement, ça a réduit nettement l'audience.

DSC_7492.JPG

Gilles a expliqué l'historique du projet, les dernières fonctionnalités, les problèmes qu'il a pu rencontré, et plein d'autres choses encore. Ensuite, nous avons eu Marc Balmer.

DSC_7493.JPG

Il a montré un exemple d'utilisation du mécanisme LISTEN/NOTIFY de PostgreSQL. Se faisant, il a démontré l'intérêt de ce mécanisme très particulier. C'était très convaincant. Enfin, Stephen Frost est venu parler de l'organisation de la revue de patchs. Stephen participe beaucoup au développement de PostgreSQL, il a notamment beaucoup contribué à l'intégration de la gestion des rôles. Du coup, sa vision du développement aidait bien à appréhender le besoin de revue de patchs, y compris par des personnes ayant une connaissance faible du langage C. Comme il le disait, mieux vaut que plusieurs personnes relisent les patchs, ça permet de détecter plus rapidement les éventuels bugs qui s'y trouvent.

DSC_7494.JPG

Du coup, je n'ai pas vu du tout les autres conférences. Bruce Momjian a expliqué l'optimiseur de requêtes. J'avais déjà vu cette conférence lors d'un autre événement et le succès qu'il a eu cette fois-ci ne m'étonne pas du tout. Greg Smith et Simon Riggs ont parlé de réplication. Là-aussi, grosse audience, gros succès. Je serais bien allé à la conférence de Steve Singer (« Troubleshooting Slony »), ainsi qu'à celle de Stefan Kaltenbrunner (« Metering the smart way, a smart grid for the datacenter »). Je n'ai jamais eu l'occasion de les voir et j'en ai entendu beaucoup de bien.

La soirée a commencé à l'hôtel. Dalibo a sponsorisé une première heure de boissons et snacks gratuits, et OpenSCG a sponsorisé une deuxième heure. Après ça, nous sommes partis avec les personnes de Skype à la recherche d'un restaurant.

pgconf.eu 2011, Amsterdam, jour 1

Cette journée est une journée consacrée aux mini-formations. Bruce Momjian a fait une journée sur l'administration de PostgreSQL. Greg Smith a fait lui-aussi une journée entière sur les performances. Enfin, Magnus Hagander et moi-même avons fait une demi-journée chacun sur la réplication. Magnus a présenté la réplication interne de PostgreSQL et je me suis occupé de la réplication proposée par Slony. Les formations les plus populaires étaient évidemment celles de Bruce et de Greg mais je suis assez content de voir que quelques personnes étaient intéressées par Slony.

Ma formation s'est bien passée. C'était la première fois que j'en faisais une en anglais mais après un petit stress inévitable, ça s'est bien mieux passé que ce que je craignais.

pgconf.eu 2011, Amsterdam, jour 0

Après 3h30 de voyage en train, nous sommes enfin arrivés à Amsterdam pour les quatre jours de conférences sur PostgreSQL organisés par PostgreSQL Europe.

Ça fait maintenant un an qu'une dizaine de personnes travaillent, semaine après semaine, sur cet événement. Faisant parti de ces dix personnes, il est très plaisant d'en voir maintenant le résultat.

Dave Page et Magnus Hagander sont déjà à l'hôtel quand nous y arrivons. Nous les rejoignons rapidement pour leur dire bonjour, puis partons visiter la ville de notre côté pendant deux petites heures.

Au retour, il a fallu préparer les sacs que nous donnerons le lendemain aux participants, ainsi que les badges. Le travail s'est terminé à 20h. Nous sommes tous partis manger dans le centre-ville d'Amsterdam, et nous avons terminé la soirée au bar de l'hôtel.

pgsnap compatible avec PostgreSQL 9.1

Cela fait un moment que je n'avais pas travaillé sur pgsnap. J'ai pris le temps d'ajouter le support complet de la 9.1 ce soir. Je n'ai pas encore préparé une nouvelle version car j'aimerais y ajouter quelques fonctionnalités. En espérant que je me laisse le temps de le faire réellement...

Bref, en attendant, les sources sont disponibles sur le compte github de Dalibo.

Je me demande aussi si je ne devrais pas le recoder en C. Ce sera certainement plus amusant à faire que du PHP. Peut-être que la version 1.0 sera en C du coup :)

Manuels mis à jour

Les manuels français ont été mis à jour suite à la mise à disposition des nouvelles versions mineures. Par contre, les versions CHM et PDF ne sont pas encore actualisées. J'espère pouvoir le faire cette semaine.

Le planning des conférences pour pgconf.eu est enfin disponible !

pgconf.eu, c'est l'ancien pgday.eu. Autrement dit, plusieurs jours de conférences autour de PostgreSQL, organisés par la communauté, pour la communauté (contributeurs comme utilisateurs). C'est donc un excellent moyen que ces deux groupes se retrouvent et puissent discuter ensemble.

Cette année, l'événement a lieu à Amsterdam, du 18 au 21 octobre. Le premier jour est consacré à des formations/ateliers, et les trois autres à des conférences. Le planning est disponible ici.

Dalibo sera évidemment présent et donnera même quelques conférences :

  • New plugin architecture in phpPgAdmin and what to expect from it (Guillaume (ioguix) de Rorthais, Leonardo Augusto Sapiras)
  • Relational Database Designer for pgAdmin (Guillaume Lelarge, Luis Ochoa)
  • What's new in pgpool-II 3.1 (Jean-Paul Argudo)
  • What use are the statistics views? (Guillaume Lelarge)
  • Best practices with Ora2Pg (Gilles Darold)
  • Migrer à PostgreSQL: comment s'y prendre? (Jean-Paul Argudo)

N'hésitez pas à venir nombreux.

End of pgAdmin's GSoC 2011

Luis Ochoa sent me his latest patch some time ago. It took me a while to find some time to review his patch, to fix a few bugs, but I finally did it. And I applied the resulting patch this afternoon.

What we now have is really awesome: reverse engineering of an existing schema. Even more, we can build an SQL script to create the reversed model or only apply the changes between the model and a selected database. It could be another database than the one used for the reverse engineering. One simple example to show its power. You can reverse engineer your schema on your development database, connect to your production database and ask the database designer to build the script that will contain only the SQL to push the definition changes.

Of course, right now, the code is probably quite buggy. And it lacks a lot of features. First one would be a better datatype support. Only a few types are accepted right now. User defined types aren't obviously but also some uncommon types (like tsvector), and common ones (timestamp with timezone for example). Also lacking is a support of all the table properties (fillfactor, autovacuum settings are part of the missing ones).

If you want to take a look, you should probably see the video attached to this blogpost. You'll see how the database designer works with the pagila database (I fixed a few types in the schema to show a better demo but that's the only changes I made).

If you want to see it live, maybe you should come to pgconf.eu in Amsterdam. Luis Ochoa and I will be presenting this tool, do some demos, and wait for suggestions, and feature requests.

Wanna help us adding new features to pgAdmin?

And you don't know how to start? I've been there when I first worked on pgAdmin's source code. You need to understand pgAdmin's code, and you need to know wxWidgets. And PostgreSQL of course. Trust me, it takes quite some time to feel confident.

But there are a few things you can do to help us in our coding department. There are some little features, eagerly waited by some of our users, that are quite easy to code and that could help you start coding on pgAdmin. We have a list of feature requests on http://code.pgadmin.org and I spent some time this evening to add a juniorjob tag to each easy-to-code feature. If you're interested, you should get a look at this junior job list. It would really help us to have some people working on these tickets.

And if you don't want to work on C++ code, you can still help us with the documentation. We'll try to have a complete new manual for 1.16, but we need help to write it. We also badly need translators.

Last month work on pgAdmin

Yeah, my last blog post on pgAdmin is a month old. Time to give you some news.

Let's begin with PostgreSQL compatibility. 1.14 won't handle security labels. We haven't find time to add support for that. Good news is that 1.16 will. We already have that in git. Here is how it looks on a table:

X

See the new "Security labels" tab? that's it. A better news is that we already support security labels on shared objects (I mean databases, tablespaces, and roles). And that's a 9.2 new feature.

X

Speaking of 9.2, we also added support for invalid domains and invalid check constraints.

invaliddomain.png

The user can create these objects without the validate step; They can validate them later.

I think that's about it on PostgreSQL compatibility.

I know pgAdmin for quite a long time, and I've often been bitten by this old bug: open a property dialog, refresh the object on the browser, change the object in the property dialog... and crash. This shouldn't happen again. Once a property dialog is open for an object, the user can't refresh the object or any of its parents. He cannot either drop the object or any of its parents. And he cannot close the connection. Till he closes the property dialog. I'm really glad we finally put an end to this bug. Unfortunately, it's rather a big change in behaviour, so it won't be backpatched.

Luis Ochoa continued his work on his 2011 GSoC project (the database designer). He added load/save support. Files are in XML format, and have a .pgd extension. He also added multimodel diagram, so that the user can view his schema in different ways. Here are two views of the same design:

X

X

And last, we redesigned the options window, so that we could put more options without making the dialog bigger. It follows what LibreOffice and other programs are already doing:

X

So, despite the summer vacations, we're still going forward and at a good pace.

Plus que trois jours pour proposer une conférence

Hé oui, l'appel à conférences pour le pgconf.eu a comme date limite le dimanche 21 août. Assurez-vous d'avoir proposer une (ou plusieurs) conférence si le coeur vous en dit. Nous avons déjà reçu beaucoup de propositions mais peu en français. Car en effet, il y a un track français pour cette conférence européenne sur PostgreSQL. Donc aucune raison d'être timide :)

Manuel de la 9.1 au complet

Il restait encore un fichier à traduire. Thomas me l'a renvoyé dimanche, et j'ai terminé les deux/trois paragraphes difficiles. Maintenant, toute la documention de la 9.1 beta 3 est en français : http://docs.postgresql.fr/9.1/

N'hésitez pas à m'indiquer tout problème de traduction, de français, etc que vous pourriez rencontrer. Merci.

Allow change of a schema using pgAdmin's GUI

That's something I wanted to do for quite some time, and Thom Brown beats me to it. He added a "Schema" combobox in each object that's part of a schema. For example, on a sequence, you'll get this:

sequence.png

Before this patch, the user needed to execute the "ALTER SEQUENCE... SET SCHEMA" in the query tool, switch back to the browser, and refresh it. Now, it only has to get into the properties dialog of the sequence, select the right schema in the combobox, and click on the "OK" button. Much simpler.

Of course, it works with all objects you can find in a schema.

Thanks, Thom.

RMLL 2011, conférence sur l'organisation du projet PostgreSQL

Hier, j'ai donné une conférence aux RMLL 2011 sur l'organisation du projet PostgreSQL. C'est une conférence que j'aime bien car elle a pour but de montrer que projet libre ne veut pas forcément dire projet amateur. Malheureusement, j'ai manqué de temps et je n'ai pas pu aborder la partie sur les contributeurs.

Il y avait une vingtaine de personnes, toutes apparemment intéressées par la conférence. J'ai eu quelques questions à la fin, principalement sur le dépôt des sources et sur la non utilisation d'un bugtracker.

Étant aux RMLL, j'en ai profité pour faire le tour du village associatif, espérant y retrouver quelques connaissances et ce fut le cas. J'ai donc eu le plaisir de discuter (rapidement malheureusement) avec Emmanuel Seyman, Christophe Cazin, Éric Leblond et quelques autres. Mais pour être franc, la plupart des têtes m'étaient inconnus. Ce qui est bien d'une certaine façon, la relêve des anciens étant du coup assurée.

Pour infos, les slides et les commentaires sont disponibles sur dalibo.org, comme d'habitude.

Nice talks at char(11)

As Dimitri already said, char(11) is over. This was my first time at this event, and I don't regret it. The talks were mostly great. My favorites were Jan's talk on the evolution of replication, Magnus's talk on the replication protocol, and Simon's talk on the replication features in core. The GreenPlum talks were also really interesting to me because there's not much information out there on the internet about that fork and finally getting some informations feels good.

Oh, and Harald has been a huge room host, really dedicated to his work. So, congrats to him too.

Well done, 2ndQuadrant guys. Hope there will be a char(12) next year. (And don't forget to add the talks' slides on a website so that we could have another look at them. Thanks :) )

char(11) - jour 2

La deuxième journée de char(11) a commencé par une conférence sur MGRID. Les deux conférenciers ont montré comment ils ont utilisé PostgreSQL pour les besoins d'un système médical.

DSC_6039.JPG

Ils ont implémenté des types de données spécifiques au standard ISO21090 (Healthcare datatypes), ce qui permet des recherches rapides et faciles sur l'état des patients. Ils ont aussi travaillé sur les performances du système avec un système multi-noeuds. Le début de la conférence était un peu laborieux mais, une fois le début passé, le reste était passionnant.

Une présentation de PostgresXC a suivi. Je n'attendais pas beaucoup de PostgresXC, ce qui explique certainement pourquoi je n'ai pas été déçu. Très clairement, cela reste un système en cours d'implémentation mais je ne vois pas vraiment quelle problématique ce système essaie de résoudre. Je n'ai pas beaucoup d'espoir sur ce projet.

Les deux dernières conférences de la matinée étaient sur Greenplum, ce qui a été beaucoup plus passionnant. Je connaissais ce système de nom mais je n'avais encore jamais eu la possibilité d'assister à une conférence là-dessus.

DSC_6040.JPG

La première conférence, réalisée par Rob Klopp, a été plus généraliste. Le conférencier expliquait comment parcourir rapidement de très grosses quantités de données. Il prenait comme exemple une table de 20 To et expliquait comment il passait d'une lecture en 3h30 sur un système simple à un seul noeud, en une lecture en 0,25 secondes (avec 20 noeuds, de la compression, du partitionnement, du stockage en colonne avec compression et projection... bref tout le toutim mais 0,25 secondes pour 20 To... glurps). La deuxième conférence relatait un cas de mise en place de GreenPlum. Une conférence très dynamique et intéressante, qui expliquait bien l'intéret de GreenPlum.

La première conférence de l'après-midi était donnée par Dimitri Fontaine.

DSC_6045.JPG

Il a parlé de l'arlésienne dans le projet PostgreSQL : Skytools version 3. Néanmoins, c'est promis, c'est pour bientôt, ce que j'espère bien, les outils Skype étant vraiment intéressants et bien codés. Londiste a déjà une granularité de la réplication, par colonne, par exemple.

DSC_6047.JPG

Gabriele Bartolini et Marco Nenciarini ont fait une mini-conférence sur la mise en place de GreenPlum sur un gros serveur, ayant 100 To de données et plus de 10000 tables. Ils ont notamment parlé d'un outil, GreenBack, qu'ils ont codé pour faire une sauvegarde rapidement.

La dernière conférence à laquelle j'ai assisté était donnée par Martin Eriksson. Elle concernait la migration de serveurs répliqués avec Slony à des serveurs répliqués avec la Streaming Replication. Leur migration avait un but précis : ne pas être gêné par les modifications de structure de base. Leur façon de migrer était intéressante et m'a donné quelques idées qu'il va falloir que je mette en application.

Je n'ai malheureusement pas pu assister à la dernière conférence et encore moins participer au barbecue de fin de conférences. Je le regrette mais, ayant une conférence à donner le lendemain à Strasbourg, j'ai dû partir le soir même. J'ai partagé un taxi avec Harald Armin Massa pour récupérer mon train.

Au final, j'ai beaucoup aimé cet événement. Il est évident que ce n'est pas un événement communautaire, il est conçu, mis en place, organisé entièrement par 2ndQuadrant. Tout comme les PostgreSQL Sessions sont entièrement organisées par dalibo. Je n'y vois pas de problèmes. J'ai pu rencontré des gens très compétents, retrouver beaucoup de personnes de la communauté (à grande majorité qui font partie de 2ndQuadrant, les autres étant Dave Page d'EntrepriseDB, Magnus Hagander de Redpill Linpro, Andreas Scherbaum d'EMC et moi-même de Dalibo), ai pris beaucoup de plaisir à discuter avec les uns et les autres, ai appris pas mal de choses (plus des discussions, que des conférences, mais c'est vrai quelque soit le type d'événement).

Le seul point gênant à mon avis est le prix. C'est vraiment très cher. L'inscription à la conférence revenait à 440 euros, l'hôtel à 510 euros, le transport à 300 euros. Tout ça (ie 1250 euros) pour deux jours. En fait, je pense que participer à cet événement n'est intéressant que si le programme vous intéresse. Sinon, il est certainement préférable d'aller à un événement préparé par la communauté, comme pgconf.eu 2011 (beaucoup moins cher, "plus" communautaire).

char(11) - jour 1

Après un bon petit-déjeuner bien anglais (mais sans scone malheureusement), toujours avec Dave, Magnus et Jan, nous sommes partis à la salle de conférence. Nous avons retrouvé les personnes de 2ndQuadrant (dont Simon Riggs évidemment). Ce dernier a ouvert rapidement la journée de conférences par quelques informations très pratiques, puis a passé la parole à Jan Wieck pour la conférence d'ouverture.

DSC_6026.JPG Jan a parlé des différents systèmes de réplication. Même si, en soit, je n'ai pas appris grand-chose, je suis plutôt content de voir que sa vision du monde de la réplication pour PostgreSQL est conforme à la mienne, même si son expérience est bien plus grande que la mienne sur ce sujet. J'ai appris néanmoins que Slony allait proposer de la réplication dont la granularité allait aller jusqu'à la colonne (autrement dit, on pourra spécifier les colonnes qu'on veut répliquer pour les tables prises en compte). J'ai appris aussi que PostgresXC était de la réplication par requêtes, ce qui me semble assez fragile et m'étonne un peu.

DSC_6028.JPG La conférence suivante, donnée par Linas Virbalas, expliquait comment il est possible de faire de la réplication entre MySQL et PostgreSQL avec Tungsten. Ce qui était surtout intéressant dans cette conférence était les problèmes qu'ils avaient rencontrés, comme le fait que CREATE DATABASE et CREATE SCHEMA sont équivalents sous MySQL, ce qui veut dire que l'outil de réplication doit être capable d'interpréter les deux comme un CREATE DATABASE. Et plein d'autres petits cas sympathiques comme ça qui ont fait du développement un gros cauchemard bien tuant. Mais ça fonctionne. Aucune idée des performances par contre.

DSC_6032.JPG Greg Smith s'est occupé de la troisième conférence de la journée qui était aussi la première conférence sur repmgr. Ce dernier est un outil de gestion de la réplication écrit par l'équipe de 2ndQuadrant (principalement Greg, Jaime et Cédric). C'était une conférence assez basique, peu de nouveautés en ce qui me concerne. La seule information qui m'a vraiment intéressé est qu'apparemment, ils arrivent à calculer un lag en temps même avec une 9.0. Il va falloir que je lise le code pour comprendre comment ils font.

Nous sommes partis manger après cette conférence. À ma table se trouvaient Magnus, Dave et Cédric. Là-aussi, grosse discussion passionnante et un très bon repas.

DSC_6033.JPG Magnus Hagander a pris la suite avec une conférence très intéressante. Il a décortiqué le protocole de communication pour la réplication. Je n'avais pas assisté à de conférences sur ce thème avant et c'était clairement une excellente idée. Ça donne beaucoup d'idées sur les outils codables à côté. Il n'a malheureusement pas couvert le "Hot Standby Feedback Loop".

Cédric Villemain a couvert une nouvelle fonctionnalité de repmgr, le failover automatique. La technique est intéressante, même si le côté automatique me semble plus dangereux qu'autre chose. Cependant, il faut avouer que c'est fréquemment demandé et que, du coup, cela remplit un besoin.

Personne n'avait encore parlé des développements prévus pour la prochaine version de PostgreSQL et c'est donc Simon Riggs qui s'y colle. Le plus intéressant à mon avis est la réplication en cascade mais la gestion des performances est aussi un point très important, comme l'est la réplication avec un délai. Ce qu'il a appelé l' "online binary upgrade" me semble vraiment excellent mais je n'arrive pas à croire que cela sera possible pour la 9.2. J'attends plutôt cela pour la 9.3.

Les deux dernières conférences m'ont moins emballé. Je suppose que je devais être fatigué par les conférences précédentes car je n'arrivais pas à accrocher, sans parler d'une voix monotone au possible. Bref, je ne pourrais pas en dire plus sur ces deux conférences.

Après cette journée bien remplie, Simon Riggs nous a tous conduit dans un établissement où nous avons profité d'un apéritif simple, suivi d'un très bon repas. J'étais notamment avec Magnus et Dave, et nous avons beaucoup discuté de pgconf.eu. Dans le plus pur style britannique, nous avons ensuite cherché un pub pour boire tout en discutant. Le premier n'a pas été le bon : trop style discothèque. Le deuxième était bien. J'ai discuté avec Peter Geoghegan (qui a écrit un gros patch pour que pgAdmin puisse être compatible avec wxWidgets 2.9 et qui dernièrement a écrit un autre gros patch, pour PostgreSQL cette fois, permettant au serveur de ne pas consommer trop de ressources. La soirée s'est évidemment fini au bar de l'hôtel. Dave Page a payé sa tournée, ce qui devient une (très bonne) habitude chez EnterpriseDB.

PS : pour rendre à César ce qui appartient à César, les photos sont assez pourries et c'est ma faute :-/

char(11) - jour 0

Ce dimanche, je pars pour Cambridge où doit avoir lieu char(11). Ce sont deux journées de conférence sur PostgreSQL et la haute disponibilité, le tout organisé par la société 2ndQuadrant.

Dimitri et moi nous sommes arrangés pour partir ensemble. Ça nous a permis de discuter PostgreSQL, aussi bien au niveau communautaire qu'au niveau travail. Son travail sur les extensions étant terminé, il semble très désireux de travailler avec Jan Wieck sur les triggers pour les requêtes DDL. Je ne peux que l'encourager d'y aller à fond, ce serait une excellente nouvelle pour tous les systèmes de réplication à base de trigger, mais aussi pour les outils d'audit et pour plein d'autres applications.

Une fois arrivés à Londres, nous avons pris la correspondance pour Cambridge. Nous avons retrouvé Cédric et sa femme dans ce train, par pur hasard cette fois-là. Là-aussi, une grosse discussion et un grand plaisir de pouvoir échanger avec eux.

L'après-midi a été consacré pour ma part a eu une visite de Cambridge avec Géraldine. Cédric et Dimitri avaient une réunion de travail pour 2ndQuadrant.

DSC_5994.JPG

Balade très sympa dans une ville comprenant de nombreux monuments... et beaucoup trop de touristes.

DSC_6018.JPG

Néanmoins l'après-midi a été bien occupée.

DSC_6012.JPG

Un peu avant l'heure du dîner, j'ai reçu un appel de Magnus Hagander nous proposant d'aller manger au restaurant Brown. Après avoir déposé nos affaires à l'hôtel Double-Tree, nous nous y sommes rendus. Ça fait plaisir de retrouver Andreas Scherbaum, Jan Wieck, Magnus Hagander et Dave Page. Ça faisait quelques années que je n'avais pas vu Jan, il est resté le même, plein d'idées et plein d'entrain. Il travaille toujours chez Affilias, la société qui gère les adresses .org, .info, etc. Le reste de la soirée s'est passé au bar de l'hôtel où nous avons discuté de PostgreSQL, de réplication, de (très) gros systèmes, et notamment de la raison pour laquelle les systèmes de réplication par triggers étaient mal vus et sur un moyen de les réhabiliter.

Bref, un voyage qui commence bien :)

Search Object tool in pgAdmin

Something was missing in pgAdmin, something I didn't believe at first. Jasmin Dizdarevic came up some (long) time ago with a patch implementing a Search Object tool. After lots of discussion, I commited the final patch.

The contextual menu of each database contains a new menu item: "Search objects...".

menu.png

When you select this item, it'll open a new window asking you to enter a name pattern, and press the "Find" button. Once you've done that, pgAdmin will search each object whose name contains the pattern. It'll will display each object found in the results list.

searchobject_tool.png

When you click on one of the results, it will select the object in the browser.

Quite impressive feature if you ask me, and, sure, one that was missing. There are probably a few more tweaks that could be interesting to enhance this feature (like search in the comments, and objects's icons in the results list). What's great is that we still have plenty of time to do that :)

Anyway, thanks a lot to Jasmin Dizdarevic!

Documentation 9.1 disponible sur docs.postgresql.fr

Comme je poste très peu de billets ces temps-ci, je viens de remarquer que je n'avais rien dit à propos de la traduction de la documentation de la 9.1.

Le travail est pratiquement terminé. Seul un fichier demande encore un peu de travail à Thomas (courage :) ). La traduction de la version 9.1 (en beta 2 à l'heure actuelle) est disponible sur docs.postgresql.fr. Je n'ai pas encore eu le temps de faire une relecture et j'avoue que ça serait pourtant mérité. N'hésitez donc pas à me faire parvenir tout commentaire sur la traduction, qu'on puisse corriger cela rapidement.

J'ai profité de la mise en place de cette documentation pour déplacer les versions obsolètes sur une page à part. Ça aurait dû être fait depuis un moment mais l'important est quand même que j'ai fini par le faire.

Bonne lecture.

Database Designer is finally in

I commited it this morning. First part of Luis's GSoC project this year is now commited. pgAdmin has a graphical database designer. It's not pretty yet, it doesn't have all features I would love to see implemented, so it's rather raw. But it's there. And we can build something great with this.

Here is what I just did with it.

dd.png

I'll try to find a way to record a session of work with the database designer.

Anyway, it's available in the master branch of pgAdmin's GIT repository (http://git.postgresql.org/gitweb?p=pgadmin3.git;a=summary). Go grab it, and tell us what you think of it (but keep in mind it's its early stage :) ).

- page 2 de 68 -