Monday, May 05, 2008

Troubleshooting SPSS 16 uninstall for Mac OS/X Leopard

SPSS 16 EVAL is EVIL.

I've been using SPSS 16 for Mac OS/X for a quantitative analysis class. I had been using a licensed copy on my mac book pro, and recently installed the eval version on my mac pro - more and faster CPU cores, more and faster memory, more and faster disk; seemed like a good idea to run it where it'd go faster, but I didn't want to pay for two licenses.

Well, the 14 day eval expired, and so I uninstalled it. And then Finder crashed. And crashed. And crashed some more. And kept on crashing. And continued to crash even after a reboot.

I was able to get into System Preferences, turn on sshd, and log in remotely, and look at /var/log/system.log. There were a ton of messages that looked like this:


May 5 15:33:32 lennybruce Finder[208]: [QL ERROR] Can't get plugin bundle info at /Applications/SPSSInc/SPSS16EV/SPSS16.0.app/Contents/Library/QuickLook/SPSSQL.qlgenerator/
May 5 15:33:33 lennybruce ReportCrash[196]: Formulating crash report for process Dock[207]
May 5 15:33:33 lennybruce ReportCrash[196]: Saved crashreport to /Users/pclark/Library/Logs/CrashReporter/Dock_2008-05-05-153331_lennybruce.crash using uid: 501 gid: 20, euid: 501 egid: 20
May 5 15:33:33 lennybruce com.apple.launchd[115] ([0x0-0x44044].com.apple.dock[207]): Exited abnormally: Bus error
May 5 15:33:34 lennybruce ReportCrash[196]: Formulating crash report for process Finder[208]
May 5 15:33:34 lennybruce Dock[209]: [QL ERROR] Can't get plugin bundle info at /Applications/SPSSInc/SPSS16EV/SPSS16.0.app/Contents/Library/QuickLook/SPSSQL.qlgenerator/
May 5 15:33:35 lennybruce Spotlight[123]: [QL ERROR] Can't get plugin bundle info at /Applications/SPSSInc/SPSS16EV/SPSS16.0.app/Contents/Library/QuickLook/SPSSQL.qlgenerator/
May 5 15:33:35 lennybruce com.apple.launchd[115] ([0x0-0x45045].com.apple.finder[208]): Exited abnormally: Bus error
May 5 15:33:36 lennybruce ReportCrash[196]: Saved crashreport to /Users/pclark/Library/Logs/CrashReporter/Finder_2008-05-05-153332_lennybruce.crash using uid: 501 gid: 20, euid: 501 egid: 20


The solution was to blow away the /Applications/SPSSInc folder that the uninstaller had left in place. This could be done either from a ssh connection, or from another login, or perhaps even by booting from the install DVD. Once that folder was gone, Finder came right up. Problem solved, back to crunching numbers on the MPB.

Wednesday, April 02, 2008

Adding insult to self-inflicted injury

So, yesterday (April fools day, no less), Microsoft held their Windows Server 2008 product launch event in Minneapolis. I got there late, since I had class, and got the software bundle they were handing out. These events usually include free copies of the products being launched - in this case, Win Server 2008, SQL Server 2008, and Visual Studio 2008. Much to my surprise, there was also a copy of Vista Ultimate with SP1. This is a $289 product if you were to buy it from Amazon.com. And there it was, right in the software bundle. I've been to a number of other Microsoft software launches, and they've never included a free copy of XP - not even for the XP launch!

I guess vista's market presence is so bad, that although it would be unfair to say that Microsoft can't give it away, giving it away is what they're doing.

That's the self-inflicted injury part.

The insult part is that I'd actually be happy to have a copy of Vista Ultimate, and I'd use it in place of the Vista Business installation that I'm running now. Unfortunately, Microsoft only gave out 32-bit vista ultimate, and I'm running 64-bit Vista Biz at home. I'm not really all that interested in running 32-bit OS if I can help it anymore (other than that copy of XP I've got floating around for gaming).

Labels:

Wednesday, March 26, 2008

So tired of winter

Don't get me wrong - I love winter. I love snow. I love skiing. Earlier this year, Laurel and I went skiing and she progressed from being scared of the "magic carpet" conveyer belt to riding on the chairlift and bombing the hills.

But it's nearly april, and there's still snow on the ground. I want to go running. I want to bike to work. I want the snow to melt and have spring.

In other news, Bea and I went to see the new Horton Hears a Who movie. Good fun - I especially liked the anime-like scene where Horton is fantasizing about his strong kung-fu. And very appropriate for a 3-year-old.

Bea has been interested in reading The Cat in the Hat Comes Back, which isn't a particularly interesting story until you make the (rather obvious) connection to recursion. If you haven't read the book but you know what recursion is, go read it and chuckle knowingly to yourself.

Labels:

Wednesday, March 12, 2008

Dual Monitors rock

The Wall Street Journal has cited some research from Utah that dual monitor rigs are significantly more productive for knowledge workers and engineers than single monitors. Turns out, Al Gore already knew this.

Labels:

Tuesday, February 12, 2008

Office 2008 on the mac is slow slow slow

But you can maybe fix it, according to this post at bbold.com.


  1. Launch word (and wait for it to eventually launch)

  2. In the menu bar, go to: “Word” > “Preferences…”

  3. In the preference pane, click “General”

  4. Uncheck the box called “WYSIWYG Font and Style Menus”

  5. Uncheck “Show Project Gallery At Start Up”

  6. Click “Ok”

  7. Quit Word

  8. Re-Launch Word.



This does seem to help quite a bit. Dumping some of the fonts that I have installed that I never use anyway might help even more.

Labels:

Monday, December 10, 2007

On the occasion of turning 39

So, I'm sitting at Caribou Coffee in St. Paul, waiting for my wife to call to say it's time to come home. She's putting the kids to bed (although she should be done by now...)

OK, that was weird. She called, just as I was typing the above sentence. Freaky.

Anyway, so I'm now 39. My kids made a bit of a big deal about it being my birthday, because they get so excited when *they* have birthdays. And when I was little, I wanted it to be a big deal - I wanted lots of presents, I wanted to be the focus of attention. But I don't really want to have a big deal made of it; in the grand scheme of things, the gift-giving and singing and cake aren't all that significant.

However, it does make me think of a comment from Meister Eckhart:
"If the only prayer you ever said was, 'Thank you.' that would be enough."

And so, on this day, I find myself thinking mainly - "Thanks, Mom & Dad. Thanks for having me. I'm glad I'm here, and I hope I can make the world a little better for it."

Sunday, November 11, 2007

Diggin' Ruby

I'm taking a data mining class at the U of Mn, and for one recent problem set, we had to determine some cluster shapes that present reasonable clusters but score poorly on the silhouette coefficient (see page 541 of the PDF). I had some ideas of cluster shapes that wouldn't work well, but I wanted to validate that. It didn't take that long to whip up a bit of ruby code that explored the two shapes that I wanted to test out, and sure enough, they behaved the way I wanted them to.

Laying down the code went very quickly; the only issues I had were because of my lower level of familiarity with the Ruby class libraries compared to Java. However, I never had to leave TextMate to do this; doing it in a java IDE would have taken longer. Of course, this is old news to lots of people, but it was nice to have an excuse to play with ruby a bit more than I usually get to.

Labels:

Sunday, October 28, 2007

Pleased with Apple's Applecare service

I've got a original 17" Core Duo MacBook pro, which I purchased when they were first announced, and I purchased AppleCare with it when I got it. I wasn't sure if the applecare would be worth the money at the time, but this week it's proven to be worth the expense.

First, the hard drive failed. The hard drive was a 7200RPM Seagate - I don't have the exact model number, but I think it was a ST910021AS - a Seagate Momentus 7200.1. It started spitting out messages like this:
disk0s2: 0xe0030005 (UNDEFINED)
to the system.log. However, Disk Utility reported that the S.M.A.R.T. status was Verified. I thought "this can't be good", and backed up all my stuff. I then nuked the machine and reinstalled tiger. (as an aside, I backup at least nightly using rsync to a file server at work. If I do this before I leave for the day, it generally takes less than 5 minutes.)

Much to my surprise, things got worse. The install went fine, as did installing all my stuff. However, when I put the machine to sleep, it got really hot, there was a clicking noise from the lower left-hand side of the case (where the hard drive lives), and the little LED in the latch never started throbbing, it just stayed lit. It also refused to wake when I opened the lid - I had to hold down the power button to get it to reboot. Interestingly enough, when I changed the sleep mode from "safe sleep" to just sleep (see discussion at macworld and the manpage for pmset(1)), then the machine slept fine. So, I started to suspect that there was a bad sector allocated in the /private/var/vm/sleepimage file, that S.M.A.R.T. wasn't picking up as a problem.

I was able to verify this by running sudo cksum /private/var/vm/sleepimage. This command reads in that whole file and computes a checksum for it. I don't care about the checksum, I just wanted to read it. Bingo! The hard drive started clicking, and after a minute or so I started getting the same disk0s2: 0xe0030005 (UNDEFINED) messages to the system log.

Time to call applecare. They asked me to reinstall tiger again to verify that the problem wasn't from a third-party app. I did this, and had the same effect. It's interesting that the bad sector got allocated in the same sleepimage file. I was all prepared to write a script using mkfile(8) and cksum(1) to make a bunch of files to fill up the drive and then get one of them to fail again, but that turned out to not be necessary.

Wanting to have a bit more understanding of what was going on, I found a program called Mac Helpmate, which, buried inside it, contains universal binaries of the smartmontools suite for digging into the S.M.A.R.T. status of the drive, and having the drive run self-tests. I had the drive run an "extended offline" self-test, which took two hours. At the end, it indicated a bunch of uncorrectable read errors, but reported that the drive was healthy. Seems wrong to me...

So, a Genius Bar reservation was made at the Apple store at Rosedale, walked the tech support guy through what was happening (including the nice little cksum experiment to get the drive to click), and he said "yep - sounds like a bad drive. I don't know if we've got that in stock, but we can get one. Should have the machine ready for you in 2 to 4 days. Do you have a backup of the data on the machine, or do you need us to try to save it?" Thankfully, everything is backed up and I don't need them to worry about trying to preserve anything.

The next evening, I get a call around 8:30 PM, saying "Mr Clark, your repair is complete". I ask how late they're open, and they say "10:00 PM, but the leopard launch is going on now - it's a little crazy". Nevertheless, after the girls are in bed, I head up to fetch the machine. I've now got a happy new Hitachi HTS721010G9SA00 hard drive in my macbook pro, which may actually be somewhat faster than the seagate it replaced.

Then, on saturday, I noticed that my spare laptop battery was bulging. Evidently, bulging is what they do before they combust. There's some discussion at the Apple message forums about swollen batteries too.

I really didn't want to think about having the mac be on fire, and there was some history here; Apple did a recall of batteries from the 15" macbook pro.

Same deal - went to the apple store with the battery, went to the genius bar, did some paperwork and walked out with a new battey. No hassles at all. Evidently, others have had the same problem and the same level of pleasant service.

I'm not thrilled that the machine had these problems in the first place, but I'm happy that Apple took care of them without complaint. The applecare warranty has more than paid for itself.

Labels:

Monster Dashing

Len and I did the Monster Dash 1/2 marathon on saturday, Oct 27th. The course started at the Lake Harriet Bandshell, went down the Minnehaha Parkway nearly to Cedar, then turned around and looped Lake Calhoun and then back down to Lake Harriet.

It was a beautiful day for a run - the temp was a little cold at the start, but we warmed up nicely. Len said he wanted to take it slow, but slow for him was a bit fast for me - I was out of gas near Mile 11. But, it's not a high-intensity course, and a little walking was OK. At the end, Len said "Hit it!", and I did - took off sprinting - and beat him by 5 seconds! ;-) Still, my time was 2:25:25, which is hardly anything to brag about.

Labels:

Sunday, October 07, 2007

2007 TC 10-miler results

Well, I was right about where I expected to be - 1:44:48, for a 10:29/mile pace. This is a little slower than my first time doing the TC 10-miler, but again, I'm happy with the time, particularly given the weather. The weather was hot and sticky - as I write this, it's 82 degrees and 67% humidity. Rain had been in the forecast but didn't make an appearance. Even so, I was soaked just from my own sweat by the time I got to the finish. I feel a little concerned for the slower folks doing the full marathon; they got baked today.

I ran into Sarah Harwood at the start; we've done several of the same races over the past few years. It was nice to have someone to chat with for the first few miles.

At the finish, I managed to put on a little extra gas after the hill, passed several people heading into the chute (always a nice feeling), and got my banana, t-shirt, and massage.

The next race is in two weeks - another half-marathon, the Monster Dash!

Labels:

Saturday, October 06, 2007

Hey! Abby! Hope to see you tomorrow

I'm running in the Twin Cities 10-miler tomorrow (Oct 7th, 2007). It's supposed to be stinky hot for October in Minnesota; the high today (the day before the race) was a record-setting 87 - the normal high for early october is in the mid 60s.

I expect to be slow. Nevertheless, it should be a good run. The re-route around the collapsed I-35W bridge makes the middle part of the course even more in synch with my usual route for running home.

Abby Hegland - hope you got in, hope to see you tomorrow!

Labels:

Friday, August 24, 2007

[NSHost currentHost] slowness and Parallels

I was noticing that Mail.app and occasionally Safari would sometimes be really slow, particularly right after launch. In some cases, hitting 'reply' to a message would take almost a minute of waiting for the beachball to go away before I got a message window. It got so bad that I decided to fire up the debugger and see what was going on.

I'd get a backtrace that would look like this:

(gdb) bt
#0 0x90009cd7 in mach_msg_trap ()
#1 0x90009c38 in mach_msg ()
#2 0x90024b16 in _lookup_all_secure ()
#3 0x90024a08 in _lookup_all ()
#4 0x900574c0 in getnameinfo ()
#5 0x928892fb in +[NSHost currentHost] ()


So I decided to explore what [NSHost currentHost] does a bit more. It calls lookupd to get address info on all the active interfaces in the system, but sometimes it would take up to 60 seconds to return.

Long story short - I've got Parallels 3.0 installed. Disabling the Parallels Host-Guest network interface in Preferences made [NSHost currentHost] speed way up.

Labels:

Thursday, August 02, 2007

Minneapolis I-35W bridge collapse

As you've probably heard by now, a section of I-35W collapsed over the Mississippi River on August 1st. I was a few blocks away, and took some pictures with my camera phone. They're uploaded to flickr.

Saturday, July 28, 2007

TC 10-miler

Yay! I got into the Twin Cities 10-miler this year!

Hey - Abby? Did you get in this year?

Tuesday, July 17, 2007

Dreamhost troubleshooting

After checking for the existence of the previous post, I noticed that my blog site was kicking out 403 errors. The specific nastiness looked like this:

Forbidden

You don't have permission to access / on this server.

Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.



I checked the apache error logs, and saw a whole bunch of errors like this:

[Tue Jul 17 19:30:22 2007] [crit] [client 208.42.29.115] (13)Permission denied: /home/<my home dir>/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable

Googling for this error message turned up some misdirection, but no answers. Creating a .htaccess file in my home directory didn't fix it. Even putting one in there that was world-readable didn't fix it; because, of course, that wasn't the real problem.

Turned out that what did fix it was to make my home directory world-executable (which, of course, means searchable for directories), and each of the site directories needed to be world-executable as well. Not world-readable, but world-executable.

[rolls]$ chmod u=rwx,g=rx,o=x blog.pclark.net

Shared hosting happiness is back again, and my apologies for the downtime.

Labels: , , ,