Wednesday, October 28, 2009

LISA in MD coming soon

I'm wondering if I should attend LISA this year. They're having a storage day that looks relevant too.

Saturday, October 24, 2009

Oracle's Sun acquisition, ZFS, BtrFS, ext4

I came across a blog reporting that Apple will not include ZFS in OS X which speculates that Oracle might kill ZFS because it has BtrFS. Another blog speculates that Apple didn't want to get in the middle of a lawsuit; NetApp claims ZFS infringes on their WAFL patent (the more I learn of NetApp the less I like them).

The news above makes me more interested in BtrFS. It's developed by Oracle but GPL'd and there are blogs and articles comparing BtrFS and ZFS. It looks like the next step for GNU/Linux systems which can't have ZFS but need something more advanced than ext4.

For now I welcome ext4 until BtrFS is ready. ext4 is the default file system for Fedora 11 (benefits list), which also has an icantbelieveitsnotbtr option for experimental BtrFS support. I wonder when either will make it to RHEL. ext4 will probably be in RHEL much sooner and I look forward to fast fsck'ing at work (where I have to fsck 1T every now and then).

Wednesday, October 21, 2009

Thunderbird Slowness

My workstation has 4G of RAM, two 3.2Ghz dual-core Xeons, and a 3Gbps SATA drive with an 8M buffer... which is much more than adequate. However every now and then Thunderbird 2.0.0.23 (20090817) demands 100% of a CPU and hangs it. It even will freeze Gnome to the point that I can't spawn new xterms and I sometimes login on tty1 and kill Thunderbird. I'm just using it for IMAP and SMTP and it does this randomly. Not when I ask it to search for a buried message or while I'm waiting for a large message to be accepted by the SMTP server. I straced it during the slowness and saw:

$ strace -p 12434 2> thun_slow.txt & 
$ tail -f thun_slow.txt
Process 12434 attached - interrupt to quit
lseek(48, 51859456, SEEK_SET)           = 51859456
read(48, "60D]-\n  [-3B60E]-\n  [-3B60F]-\n  ["..., 4096) = 4096
read(48, " [-3B6A0]-\n  [-3B6A1]-\n  [-3B6A2]"..., 4096) = 4096
fstat(48, {st_mode=S_IFREG|0644, st_size=58669928, ...}) = 0
lseek(48, 58667008, SEEK_SET)           = 58667008
read(48, "^96^2E14)(^87=6f3)(^9B=8e27a)(^8E"..., 4096) = 2920
lseek(48, 51863552, SEEK_SET)           = 51863552
read(48, " [-3B6A0]-\n  [-3B6A1]-\n  [-3B6A2]"..., 4096) = 4096
...
To get some stats:
$ wc -l thun_slow.txt 
17160 thun_slow.txt
$ grep read thun_slow.txt | wc -l
9640
$ grep lseek thun_slow.txt | wc -l
5260
$ grep fstat thun_slow.txt | wc -l
1286
$ egrep -v "fstat|read|lseek" thun_slow.txt | wc -l
974
$  
So, it slows down when it decides to read a lot. I have about 1G of mail on the server and 84M in my .mozilla-thunderbird directory. My first thought was that it was indexing, but right-clicking on the folder and asking it to re-index my inbox (with many subdirectories) is very quick. Why does it decide to read a lot (presumably from my disk) at random points during the day?

Update: An article describing similar symptoms suggested corrupt MSF files and suggested stopping thunderbird, backing the profile up, deleting the MSF files and letting thunderbird rebuild them upon restart.

$ tar cvfz thunderbird.tar.gz ~/.mozilla-thunderbird/
$ find ~/.mozilla-thunderbird/0mp6haa5.default -name \*.msf -exec rm {} \;
After restarting Thunderbird it seems zippy enough. The real test will be the non-recurrence the seemingly random sudden spike in read activity.

Update: Two days later and so far so good. I think it might have had trouble reading a corrupt MSF file so it kept trying to read it. The MSF rebuild seems to have done the trick. I'll update again if it comes back.

Friday, October 16, 2009

Becoming a ZFS Ninja

Ben Rockwood's Becoming a ZFS Ninja.

Google steals the web

Is Google Sidewiki evil?. One of my friends is going to see how many days he can go without using Google and will be using Cuil instead.

Update: Switched from Cuil to Ask.

Update: Switched from Ask to Yahoo. (Isn't that just Bing?)

Friday, October 9, 2009

LISA and Change Control

Random thoughts: perhaps I should go to LISA. Sage's Change Control document might have some obvious points but it makes explicit things that every sysadmin should know.

Ubuntu KVM

I installed KVM on my Ubuntu desktop. Documentation made this easy. I then grabbed a KVM virtual appliance, ran: sudo kvm va-lapp-root.img and watched it boot.

Friday, October 2, 2009

SLES kernel updates remove prior kernel

After experiencing a problem at work and verifying it on Novell's forum, I want to make it known that:

When "SUSE Linux Enterprise Server" installs a kernel update, it deletes the kernel on which it is running.

I've never seen something this stupid. What if the old kernel doesn't boot? Why not keep at least one old version available? I've never seen a Unix do this. We're going to write a script:
$ ./cya.sh --before # back up the old kernel somewhere
$ rug upgrade
$ ./cya.sh --after # reinstall the old kernel 
Did Suse always have this problem or did Novell break it?