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.

Up and running nicely now

The USB freeze up problem isn’t happening any more. I don’t know exactly what fixed it, but I ran the SEATools long test on it, ran fsck on it, plugged it into a different USB port in a different cradle. Possibly coincidentally, I was having another problem with not being able to log off or authenticate in the software update program, and one suggestion I found on-line was to install a particular “KDE extras” package which seems to have cured those problems.

The replacement disk for the one that came with errors arrived, and a quick fdisk and mdadm /dev/md128 --add /dev/sdb1 and it rebuilt overnight and everything looks ship shape and Bristol fashion. Hopefully I won’t be getting any more “degraded array” emails, and hopefully when I reboot it, it won’t stop at the “initramfs” prompt waiting for me to fix whatever is wrong.

Oh, I also fixed a problem with Google Chrome occassionally freezing. I looked in my .xsession-errors file and it was filling up with messages that said “ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream”. Googling that found that I had to start Chrome with google-chrome --disable-bundled-ppapi-flash to disable the built-in Flash. Fortunately when you do that it uses the Adobe Flash plugin that was installed for FireFox so everything keeps working as before.

I’ve got to say, I’m really loving KDE. It really works well and looks good.

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!”

Possibly spoke too soon

USB drive was frozen up this morning. Possibly the unexpected power down yesterday (guys hooking up my gas grill threw the wrong breaker and powered down my office as well as the furnace) reset the hdparm parameter, or it wasn’t an inopportune spin-down that caused the freeze up. Just in case, I removed the pm-tools package to prevent the system from trying to do any power management (I hope).

Another glitch…

After my wipe and reinstall experiment, there are still a few little glitches (above and beyond the fact that I’m still running my RAID1 in degraded state because the disk it’s supposed to be mirroring to is being replaced). One of the most annoying was my hourly “rsync to the external hard drive” – my own home grown equivalent to “Time Machine”. About once a day it was freezing up, usually during the first big access to the drive, which is a “rm -rf” on the destination directory. And once it froze up, it really froze up – there would be dozens and sometimes hundreds of processes that wouldn’t end and couldn’t be killed, most the hdparm and smartctl commands that munin issues to detect the drive status and temperature. The only way to get those processes to end was the turn off the external USB cradle. This didn’t happen before, so I don’t know what’s going on. But I suspected that something is being more aggressive about spinning down idle external drives, so I issued the command “hdparm -S 0 /dev/sdd” and that seems to have solved the problem.

Other glitches – the dvd player application exits as soon as you start it. Also, I just had a notification in the system notifications area that there were upgrades to install, so I clicked it and it brought up the updater app, but when I clicked “Install all updates” it told me it couldn’t because I hadn’t authenticated. I’m pretty sure it’s supposed to prompt for your password and authenticate you first. So I installed them from the command line using aptitude. Nothing I can’t live with.