What a surprise, this week-end I received I very nice email asking me some help on the plugins I wrote for dstat. I wrote them more then 2 years ago while listening to Linus Torvalds in Cambridge :)
The request was to enable the read of the password and user from the my.cnf file instead of exporting them in environment variables.
Here are the patch for the release 7.x (fedora) and 6.x (centos 5.3)
The patch is only for one of the plugin, but it's easy to apply it to all of them.
ptxArchiver 0.1 is released, this tool uses mk-archiver from maatkit to archive tables into another table, a file or simply purged BUT it follows the foreign keys defined in a config file and archive then the linked table.
Feel free to test it and report improvements, comments, encouragement :)
Special thanks to zipkid for the help reviewing some code.
I had to setup a nice mail solution for friends on their GNU/Linux server: a nice Debian 4.0 :-)
As you should know, I'm not a Debian afficionados, never knew why but this is not my favorite distro and this is where the opensource world takes all his sense: freedom of choice :) "...tous les goûts sont dans la nature..."
Ok then I started to setup ldap, not really a problem, the 4 db's were inserted via ldif; postfix with ldap support for domains and users was also not problem. Cyrus and Sasl was ok untill I discover that the autocreate patch was not present in the package... oh my root !
As I didn't want to install cyrus from sources, and as I wasn't able to find a package already patched (but I found a huge amount of bugs requesting that feature and this for all cyrus version, it seems that postfix's debian maintainers don't like that patch... but I guess that all the other common distros have the patch included in their package...)
Ok then I started to try to remember how to make a .deb again (loooooong time ago)
step 1: apt-get install devscripts
step 2: apt-get source cyrus-imapd-2.2 (I know it's old :( )
step 3: create a dpatch (cat ~lefred/cyrus-imapd-2.2.13-autocreate-0.9.4.diff | dpatch patch-template -p "85-autocreate.dpatch" > cyrus-imapd-2.2-2.2.13/debian/patches/85-autocreate.dpatch
step 4: add 85-autocreate.dpatch between 80-kbsd-no-psstrings.dpatch and 99-update-autoconf.dpatch in cyrus-imapd-2.2-2.2.13/debian/patches/00list
step 5: apply the patches : cd cyrus-imapd-2.2-2.2.13; dpatch apply-all -v
step 6: build the packages : dpkg-buildpackage -uc
ARRGH it fails :
reverting patch 85-autocreate from ./ ... failed.
step 7: rm debian/patched/85-autocreate.dpatch
step 8: redo step 6
ARRGH it fails again, it seemd the dpatch creation is not ok
I found another dpatch  and I replace it, so step 3 can be replaced by the copy of the new 85-autocreate.dpatch into cyrus-imapd-2.2-2.2.13/debian/patches/
Then back to step 4 and everything works !
in the mail.log using the standard debian package :
Oct 15 20:12:53 ns2014675 postfix/pipe: 6506571620: to=
with the new fresh package :
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, INBOX was successfully created in partition default
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subfolder INBOX.Learn creation succeeded.
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subfolder INBOX.Learn.Ham creation succeeded.
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subscription to INBOX.Learn.Ham succeeded
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subfolder INBOX.Learn.Spam creation succeeded.
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subscription to INBOX.Learn.Spam succeeded
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subfolder INBOX.Drafts creation succeeded.
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subscription to INBOX.Drafts succeeded
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subfolder INBOX.Sent creation succeeded.
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subscription to INBOX.Sent succeeded
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subfolder INBOX.SpamMail creation succeeded.
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subscription to INBOX.SpamMail succeeded
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subfolder INBOX.Trash creation succeeded.
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: autocreateinbox: User alain, subscription to INBOX.Trash succeeded
Oct 15 23:09:28 ns2014675 cyrus/lmtpunix: User alain, Inbox subfolders, created 7, subscribed 6
I'm very happy to present you my new phone :
I was hesitating between an iphone, an android or an openmoko... but the first two were not following the standards I was expecting, the last one was not stable enough.
This one is compatible with all the software I use every day and follows real standards !!
I can sync now !
Inuits changed name to Pinuits.
This name is more following the open standards and naming convention for companies giving consultancy around MySQL and other open source technologies like PhP, lamP, Python, Perl, druPal, ect... follow the P and read our press release at www.pinuits.be.
Friday evening we had a pre-fosdem dinner with the Inuits (and Jen, thanks to her we reached the number of 10 to have cheaper dinner).
It was very festive and also the first time for me to eat in a spanish restaurant where the plates travel on a rail :-)
I'd like to thank the wonderful gps of my father, thanks to it we could walk at least 5km more than needed, maybe he hacked it to help the rehabilitation of my knee :-P
The beer event was crowded as expected, the beers good as expected, but I couldn't stay too long and I already left at 22.30.
I met Dim0 and Zipkid.
On Saturday I was unfortunately not present at Fosdem :(
On Sunday, I met first Arrfab, ready for his introduction to CentOS (but I didn't plan to follow it again this year); the Drupal room was so full and me so late that I decide to pass my way and I met Sdog and Flyer in front of the MySQL Dev Room.
After a short chat I went to Janson with Denraf to follow the Cobbler presentation.
I didn't know that Jasper was working for my first employer in OpenSource: Stone-IT but in the Netherlands. Nice, it seems that cobbler works now also with Debian and Ubuntu, wasn't the case when I checked some time ago. With the Puppet integration I really need to have an extra look to it.
I attended then Building a Community Website using Drupal but the talk didn't reach my expectation.
The room was too crowded but this is generaly the case on every rooms. Denraf did also a free demo of android : the very loud ringtone :-)
After the pit stop for a sandwich, we join Toi and Flyer to Jason for the talk on upstart... seems very nice but I've to admit that I wasn't paying enough attention (certainly flyer's fault, we had a lot of fun with the syntax of upstart due to some fonts problem on the slides: too many blank spaces).
Ok, then we went to see if the life is really to short fo SeLinux in the Fedoras/Centos Room where I saw briefly Sintax....
Flyer seems so impressed by SELinux.. will his life be long enough...?
FOSDEM is finished, see you next year for the 10th anniversary of FOSDEM.
yes I do !
here's my poken :
Thx dim0 :-)
I saw that there are a fresh new version of IMSpector : 0.8 from 22 December 2008.
(and a new website too ;-) )
So I've created new rpm packages for CentOS 4.6 (i386) and Fedora 10 (x86_64).
Here they are:
Sometimes I use my EeePC during a meeting, or when I don't want to use my bigger Dell laptop. But of course I'd like to be able to synchronize one folder on both machines to transfer documents that I should update on both laptops.
unison is my friend for this task, but as I'd like to test some avahi and libnotify code to automate and integrate this solution on my gnome desktop, I wrote the following python script : EeepcSync
Instructions on how to use it are present in the script.
Somes screen captures :
of course the code should be reviewed as I'm very newbie in python ;-)
Asking the question is already answering to it ;)
I had a very long query that was even locking the table during the select on innodb (select into, that's due to the binlog).
To avoid that query I decided to replace the select into statement by a select into outfile and add a second statement to perform the load data infile.
The query was running for 18 hours !!
It was impossible to change it, but the amout of data was huge, more than 100M rows (>1.2GB of returned data).
I was able to reduce the running time by 9 : now the query runs in 1h50 !
by adding SQL_BIG_RESULT to my select and by modifying two MySQL variables :
set global join_buffer_size=67108864;
set global query_cache_size=67108864;