dmo.ca/ blog
Drives with 4k sectors

I have a new disk that uses 4kb sectors. Unfortunately, on the system it's installed in, none of the partitioning tools deal with this automatically, leading to near-guaranteed misalignment and slower performance, or so says the Googled results (JFGI yourself... I'm too lazy to paste the links here). So, here's what I did:

more

Posted Thu 27 Oct 2011 10:54:57 PM EDT Tags: 4kb disk filesystem gpt parted sectors
Fun With Perl, Dynamic Linking, and C++ Exceptions

I'm hacking on some tools that use the Search::Xapian module to build up search indexes. It's an excellent Perl interface to Xapian, but unfortunately it seemed to be too slow for our purposes. Tracing our code showed that much of the slowness was in passing data back and forth between Perl and the C++ library for every call.

I decided to write my own XS module to speed things up. Instead of using Search::Xapian, I'd bundle everything up into a Perl datastructure, and pass it down to libxapian through my own module, once, and do all the indexing work in C++. This worked great -- until I started trying to do some exception handling.

more

Posted Thu 09 Dec 2010 11:29:48 AM EST Tags:
Migrating issues from Google Code to Github

I'd much rather use Git over Subversion, but I still have one project (leaguerunner) using Subversion on Google Code. Migrating the code itself to git is fairly simple, but being unable to migrate the issues still needs some tool development.

more

Posted Sat 22 May 2010 07:57:47 AM EDT Tags:
WIND mobile towers in Ottawa

You may have heard that WIND Mobile is going to be offering service in Ottawa shortly. I got curious as to what their coverage might be and started looking for coverage maps. I didn't find any, but I ended up graphing their wireless backbone instead.

more

Posted Thu 11 Mar 2010 12:34:23 AM EST Tags:
Perl module for detecting virtualization

A while back, I posted about detecting virtualization on Linux from a shell, using various tricks. Around that time, I also implemented those tricks as a perl script for internal use at work with the intent of eventually cleaning it up for public consumption. I finally got around to doing it, and the result is Sys::Detect::Virtualization availabe from CPAN, or from GitHub.

Currently, it can only handle Linux, and is only tested on a small number of virtualization hosts. Patches are welcome.

Posted Thu 25 Feb 2010 01:38:04 PM EST Tags:
Thinkpad Voodoo Zombie Resurrection

Today, my Thinkpad T61 decided to stop working. While I was in the middle of reading email, it just stopped. Completely blacked out -- no AC light, no battery light, nothing. Here's how I got it working again.

more

Posted Tue 22 Sep 2009 09:53:09 PM EDT Tags:
VServer and 127.0.0.1

I recently moved our automated testing systems from a KVM+Qemu setup to Linux-VServer. We didn't need the overhead of a full virtual environment, even one as lightweight as KVM. However, there was a little snag -- 127.0.0.1 didn't work correctly.

more

Posted Tue 14 Jul 2009 12:20:18 PM EDT Tags:
Converting vimblog to ikiwiki

Until today, this blog ran on vimblog, a hand-rolled minimal script for displaying blog entries. In the last year or so, though, I've become a convert to git, and so what I really want to do is edit my posts on any system, commit them to a git repository, push to a remote and have them end up as blog entries on my server. Fixing vimblog to do this would have been more work than I want to deal with, but thankfully ikiwiki exists, and can do most of what I need.

So, as of now, this blog is in ikiwiki. To get there, I followed (more or less, since I'm documenting after-the-fact) these steps:

more

Posted Sun 17 May 2009 11:16:08 AM EDT Tags:
Benchmarking BDB, CDB and Tokyo Cabinet on large datasets

At my job we have need of a high-performance hash lookup database in our antispam product. It's used to store Bayes tokens for quick lookups on individual scanning systems, and is read-only in the fast path (mail scanning) with updates taking place in another process. For the last few years, we've been using a plain old BerkeleyDB hash database via Perl's DB_File, but with all the hype about Tokyo Cabinet and its benchmark results I figured it was time to take a look.

more

Posted Fri 01 May 2009 10:35:36 AM EDT Tags:
Configuring bind9 in a chroot, lenny version

A while ago, I blogged the chrooting of bind9 on Debian, so I wouldn't forget how to do it. Things have changed slightly for Lenny, so here's the update.

more

Posted Thu 09 Oct 2008 02:37:54 PM EDT Tags: