Quick news

Computing

How to restore Unfuddle dumps: migrating to Drupal CaseTracker

Unfuddle is a very convenient and fairly cheap SaaS hosted Redmine (with extensions) and SVN/Git, which I use regularly on customer projects. Their service includes reassuring "Backup" options, going as far as to include the ability to backup to your own Amazon S3 bins in addition to their local backups.

Recently, however, I had to go back to an archived project for which I had dutifully taken a dump before closing it on Unfuddle, and looked for a way to restore it to my Unfuddle account. To no avail. Unfuddle support then kindly confirmed that the service did include a backup feature, but no restore:

Backups of projects within Unfuddle are for personal use only and cannot be restored into accounts via the interface. This however may be possible with some custom scripting on your part and with the use of our API (http://unfuddle.com/docs/api).
What then ?

What to do when you can no longer login to your Drupal site

So the scenario is this: you notice that you are no longer able to login on your Drupal site:

  • the {users} table entry for your account looks just fine
  • the login and access timestamps on your account are just a few seconds old, matching your latest attempt to login
  • you reset your password in the DB, just in case, and it still does not work
  • the telltale is that Drupal will not even tell you your login failed: it actually works, as the {users} table shows, but yet you are not logged in

Can you guess what can have been going wrong and fix it ?

Counting MySQL tables from the shell

Tiny tip for the day: a one-liner to get the number of tables on a MySQL server across all databases:
mysql -BNe 'SELECT COUNT(*) FROM TABLES' information_schema

What to do when your Varnish directory fills up

The symptoms

While browsing my servers Munin reports, I recently noticed how used disk space was constantly increasing on a filesystem which should not have been seeing such growth. After a bit of digging, it appeared the /usr/local/var/varnish/(host) directory was filled with dozens of sparse files all named varnish.??????. What could have been happening ?

Developing to the Views 7.3 API - slides from DDDB

Now that Drupalcon Chicago is over, I found some time to fix the slides from my session at the Drupal Dev Days in Brussels. It took some time because neither Google Presentations nor Slideshare apparently like the MgOpen font family.

The presentation is now on Slideshare at http://www.slideshare.net/fgm-osinet/drupal-views-development.

The progressive code samples are attached to this blog entry, as a tarred Git repository.

First LibreOffice build

LibreOffice About boxUnless you've been living under a rock these last few weeks, you are aware of the fork of OpenOffice.org created by The Document Foundation (TDF), called LibreOffice (LO), and wondering whether some code was already usable.

Well, I happened to have a mostly unencumbered Saturday, so I took it to try my hand at building the latest LO dev build from TDF...

Open up to other languages: come to OSDC France 2010 !

The second Open Source Developers Conference (OSDC) will be held on saturday 9th and sunday 10th, October 2010 at "Carrefour Numérique de la Cité des Sciences", in Paris. OSDC is a cross-language event, set up by multiple french language-specific non-profits:

  • PERL: Mongueurs de Perl
  • Python: AFPy (Association Francophone Python)
  • Ruby: Ruby France
  • SmallTalk: European Smalltalk User Group

When Dropbox ignores files to sync on Linux...

Much like many Drupal devs, I happen to make fairly intensive use of Dropbox, and even use a "pro50" account to sync my always increasing set of "current" source folders, including checkouts of all major Drupal versions and lots of contrib.

Which means that, beyond the number of gigabytes of data Dropbox has to sync, the number of the files making up these gigabytes has also been increasing, currently to around 100k files. After I started playing with checkouts of the Drupy project in preparation for the Drupyx experiment, I noticed that, when I created some new files under the Drupy directories, their creations and subsequent changes would not be tracked by Dropbox, but they would correctly sync if I renamed the Drupy directory itself or a directory above it. Something like this:

Action Result on Dropbox.com
touch ~/Dropbox/src/drupy/src/foo.py Ignored
mv ~/Dropbox/src/drupy/src/foo.py ~/Dropbox/src/drupy/src/bar.py Ignored
mv ~/Dropbox/src/drupy ~/Dropbox/src/drupa Full sync below ~/Dropbox/src/drupa
mv ~/Dropbox/src/drupa ~/Dropbox/src/drupy Full sync below ~/Dropbox/src/drupy, including "foo.py"
rm ~/Dropbox/src/drupy/foo.py Ignored

And all this while operations on a PC running Windows tied to the same account did not experience any similar problem. What could be going wrong ?

Tip of the Day: restart Opera without Dragonfly

If you like Opera Dragonfly, as I do, you may have stumbled upon a small annoyance: if Opera is configured to start with the previous window, if you use Dragonfly in a separate window - maybe because you use a dual screen config - if you happen to close the main Opera window with Dragonfly still open, and close Dragonfly afterwards, then you will notice that Opera complies with your choices: when you restart it, it restarts with the main browsing window closed and Dragonfly opened.

At this stage, closing Dragonfly won't help, because Opera will faithfully restore it at every launch. Annoying. Luckily, there is a very simple workaround if you find yourself in that situation...

Optimizing strings in PHP ?

Every so often, I get asked about whether it is really worth it to chase double quotes and constructs like print "foo $bar baz", and replace them with something like echo 'foo', $bar, 'baz', or even to remove all those big heredoc strings so convenient for large texts.

Of course, most of the time, spending hours to fine comb code in search of this will result in less of a speedup than rethinking just one SQL query, but the answer is still that, yes, in the infinitesimal scale, there is something to be gained. Even with string reformatting ? Yes, even that. But only if you are not using an optimizer.

Just don't take my word for it, Sara Golemon explained it years ago with her "How long is a piece of string" post, in 2006.

Syndicate content