How to do a very cautious LVM storage migration
A while back I wrote about how I was tempted by LVM mirroring when I wanted to migrate my LVM setup from aRAID mirror on some old disks to a new RAID mirror on some new(er)disks. Because I am some peculiar combination of cautious and daring, Igave in to this temptation recently. Now that the migration has more orless finished, it's time I reported in how it went and how to do this.
The short summary is using LVM mirroring to migrate my LVM volume group
Yes, git add makes a difference (no matter what people think)
One of the things said about git is thatit's less user friendly and takes longer to learn than Mercurial ; the first exhibit for this differenceis usually git add and by extension git's index. Unfortunately,a common reaction among git fans to both the general issue and git add in specificis a kind of defensive denial, where they hold forth that it's notthat difficult and people learn it fine and really, git is userfriendly.
You may already have gotten an idea of my views
Complications in spam filter stats in our environment
It seems useful to generate some kind of periodic stats on how ourspam filtering system is doing, something likethe one off stats I've done before . But this raises a question: whatactual numbers are meaningful, and how do we get them?
There are two problems, one general and one pragmatic. The generalproblem is the difference between counting per-recipient events andper-message events. Many of our spam filtering things happen only toa single recipient and only get logged that way; others happen
How CSLab currently does server side email anti-spam stuff (version 2)
What I wrote about the Computer Science department's spam filteringback in 2007 is still broadly correct, but as youmight expect the passage of several years of time has changed some ofthe details and added some things. I'm not going to repeat stuff from the original here, just supplement it with someadditional notes that are current as of May 2012.
Most of the server side anti-spam stuff we do happens on our externalMX gateway . These days it does a
Today's Mercurial command alias: a short form hg incoming
Like other modern VCSes, Mercurial allows you to define command aliases. This is a feature that I don'tuse as much as I could, but every so often I work out one that's reallyhandy. Today's alias is something I've called ' hg pending ', a short formsummary version of ' hg incoming '.
From my .hgrc:
[alias]
pending = incoming --template '* {desc|firstline}\n'
This shows something that looks like:
How we do milter-based spam rejection with Exim
Suppose that you use Exim as yourmailer, and you want to do SMTP-time rejection of incoming spamusing some outside program that has a sendmail milter protocol . Exim has no native support for the milterprotocol , but it is possible to hijacksome existing Exim interfaces to more or less achieve this providedthat you don't want to try to change the message in flight at this point(only either accept it as is or reject it).
Exim has a content-scanning interface ;one of the things
Some notes on using XFT fonts in TK 8.5
Due to Ubuntu 12.04 switching to TK 8.5 by default, I recentlydiscovered that I had never migrated to using XFT fonts in exmh when I moved therest of my environment to them (and sort of to UTF-8). Deciding to fixthat led me into a number of adventures, partly because exmh itselfgenerated XLFD font names in a number of important places. So here iswhat I have learned about XFT font support in TK 8.5.
To start with, TK
Our pragmatic experiences with (ZFS) disk errors in our infrastructure
I wrote before about when we replace disks based on errors (and then more on ZFS read errors ). Today I want to talk about our pragmaticexperiences in our fileserver infrastructure .The first and most important thing to understand about our experiencesis that in our environment disk errors are indirect things . Becausewe are using iSCSI backends , ZFS doesnot have access to the actual SATA disk status; instead, all it gets iswhatever the iSCSI backends report.
(I find it plausible and indeed likely that ZFS could behave
More on CISC (well, x86) versus RISC
Sometimes I am sadly slow at replying to comments. So I am hoisting mymy reply to a comment on my first entry on why x86 won against RISC into an entry.
From --M's comment:
It's my understanding that modern CPUs don't execute the x86 machinecode directly, they're actually RISC processors that execute a programthat can run and optimise x86 instructions.
While this is true as far as I know, it doesn't mean that
The XFT font naming issue
One of the subtle problems with XFT fonts is that they don't havecanonical, broadly supported textual names. To explain this, I need togo back to old server side XLFD fonts to show what I meanand the difference between XLFD fonts and XFT fonts here.
Fundamentally XLFD fonts are specified by their name, right from therelatively low level library APIs on up. You get a handle to the font byasking for it by name, and the name you use is its standard canonicalformat XLFD name.