Internet Exploder, I hate you so much

Yesterday was a fun day in the continuing struggle against IE brokenness.

First problem: the form submit button used to work on IE, but now it doesn’t. Well, no matter, because the form had an onsubmit that did some AJAXy stuff and then cancelled the form submit. Rather than wasting time trying to figure out why it works on real browsers and not on IE, I just changed the submit button into an ordinary button that invoked my function. Problem solved.

Second problem: My form is very dynamic, allowing you to add, delete or clone table rows, each of which contains several select, checkbox, and textarea input fields, all with associated onchange or onclick callbacks. The problem was that when you cloned a row, the callbacks on the new row would apply to the original row. All the callbacks had the row id in the arguments list, and when I clone I use the jquery attr command and a regular expression to change the row id. That works for real browsers, and it apparently works in IE (if you examine the code in Firebug you see the new id), but apparently the actual callback data is stored internally somewhere. It didn’t seem to matter whether I called clone with true or false in the copyData argument. So I restructured all my callbacks so the were activated by the jquery on command, and grabbed the row id and other arguments using the jQuery(this).parents('tr').

It was annoying to have to do all this stuff because IE is so different from real browsers, but the code is probably better for it.

Somebody doesn’t quite understand how to configure their spamming software…

Saw this one in the comment spam for this blog: (the name of the product and other details elided)

{To my surprise|As it turned out}, {I stumbled upon|I ran across|I stumbled onto} {this program|this system|the program|this method|the deal|this product} by XXXX XXXXX. “XXXX XXXXX!” {caught|captured} my attention. {At first|In the beginning|Initially|At the beginning} {I was|I had been|I’d been} {baffled|confused|puzzled} by the name of the program. {But|However} as I read along, {I was|I had been|I became} convinced that {it could|it might|it may|it could possibly|it may possibly|it could actually|it would|it will|it may well|it will probably|it will possibly|it would likely|it can|may well|may possibly} {help me|assist me}. I’ve been {following the|following a|pursuing the|using the} {program|system|method|technique} {for 2|for two|for just two} weeks now. {Saying that|Stating that|Stating} I’m {seeing|experiencing|discovering|finding|witnessing|observing|having} results is an understatement! {The results|The outcomes} {are amazing|are fantastic}! Never {in my|during my} life did {I think|I believe} {that there|there} {would be a|will be a|has to be|has got to be} {solution to|treatment for} my XXXX {woes|problems|worries|issues|troubles} until {I found|I discovered|I came across|I ran across|I stumbled upon} “XXXX XXXXX!”

Well, that didn’t last long

A few hours after my last post, as I slept not very soundly, the hard disk that kept dropping out of the RAID as it rebuilt dropped again. This morning, I booted in the the Seagate “SEATools” disk and gave it a full on test, and it found a metric buttload of bad sectors. Not good on a brand new disk, so off to the RMA process I go. The machine is up and running again, with /dev/md128 running as a “degraded RAID 1” (ie a single drive with no mirror).

Does anybody else find it pretty shitty that the vendor can ship you a defective drive, and then make you pay for the shipping to return it? Or that they won’t ship the replacement until they get the old one back? Seems to me that they could ship a replacement immediately with the proviso that they’ll charge your credit card for the drive if you don’t return the old one.

A new start

I decided I needed some more room on my home Linux box, so I bought a couple of 2TB disks. I also decided it was time to do a wipe and re-install because the box has been upgraded many times and there are several things that just don’t work right any more. So I burned a bunch of different distros onto CDs and experimented with them, and decided that Kubuntu is the best combination of beauty and power. None of the other distros except Debian allows you to set up lvm on RAID-1 while installing, and Debian looks like a bit of a dogs breakfast compared to Kubuntu, even in KDE.

The two new disks are so big that as it is, I’m only using them for the new installation, so the I can mount the old system under /old_system and I can compare everything to make sure I haven’t lost any important configuration. But eventually I’ll be able to delete those partitions and add them back to the free pool in the LV and use them to expand any of the actual in-use partitions. I love lvm.

Installation has gone ok, I’ve got about 3/4s of the things I need to get working again working again, but I’ve hit the usual string of snags. The biggest is that one of the two new disks keeps dropping out of the RAID1, so I have to keep adding it back in. I’ve rejiggered all the cables as best as I can, and hopefully it will rebuild overnight and it will be ok. Fingers crossed, I’m off to bed.

Is this even possible?

Ok, here is the current situation: My machine has two identical 500Gb drives, and two identical 1Tb drives. When I first set it up, with just the 500Gb drives, I was using a version of Linux that wouldn’t boot from mirrored lvm partitions, so I set it up

  • /dev/sda1 2Gb /boot
  • /dev/sdb1 2Gb /
  • /dev/sda2 2Gb swap
  • /dev/sdb2 2Gb swap
  • /dev/sda3 and /dev/sdb3 – turned to a mirror, /dev/md0 and then created a
    pv and a vg.

That was working fine for a number of years, and then I added the two 1Tb drives, which I created as a mirror /dev/md1 and added it to the vg.

At this time, I have more more than 500Gb free space in the vg, so I definitely could pvmove and vgreduce and get rid of that. I’d also like to somehow fix it so that / and /boot and swap are on lv and just boot from the two 1Tb drives. The reason I’d like to do that is that

  • a) It’s been bugging me for years that I’m still using physical partitions
    for / and /boot, so I can’t resize them and
  • b) I have two 2Tb disks sitting on my desk that I’d like to add, and I
    don’t think I have enough SATA ports for 6 disks and
  • c) these two 500Gb drives are ancient – they just hit their 5th birthday a
    few weeks ago.

So would it be possible to migrate everything off of /dev/sda and /dev/sdb without major surgery? Or am I going to have to bite the bullet and re-install everything?