Bill's Computer Circus
Don't get caught with your system down.
NOTICE: This web site may not render correctly in older browers like Internet Explorer 5.2 for the Mac. May the gods help you if you are using Internet Explorer on any machine! Otherwise, if this site does not look right on your browser, please let me know what browser you are using (and what version and on what computer). Thanks!
"Visual Basic makes the easy things easier. Delphi makes the hard things easy."
-- unknown
Wednesday, April 28, 2004
 



Although I didn't know what I was supposed to be doing most of the time, I had fun on the set of the independent film that was being shot last Saturday. I was there about 16 hours - it was a long day. I learned a few things just from watching, and I also got to partake as an extra, so I got some on-camera time.

Woo hoo!

Anyway, back to the Computer Circus. I am STILL working to restore the damage done by my attempt to create a RAID 1 (mirror) setup on my computer. Last night, I was determined to find out what happened, exactly, so I did some further testing. I happened to have two other 1 GB drives that I was not using, so they became my test subjects.

I tried to repeat the process as closely as I could to mimic what happened to my main drive. I set up one drive to be a dynamic disk with compression enabled. Sure enough, when I rebooted and configured the RAID controller for RAID level 1, the volume disappeared from the operating system - just like what happened with my main drive! Any and all attempts to reactivate it, failed. Just like the other one! The one thing I did differently, however, was that I allowed the mirror copy operation to complete. This made no difference. When my main drive disappeared, I immediately interrupted the update, because I thought it was copying in the wrong direction. This test verified what I had already come to suspect - that I had done everything correctly, but it just doesn't like dynamic disks.

So the next test was to try the same scenario on a basic disk. I separated the mirror and blew away what was left of the dynamic disk and reformatted it as a basic disk, and created a couple of test text file (just to put some data on the drive). I rebooted, configured RAID 1, and loaded the OS. NO PROBLEM! The volume didn't disappear from the system, and the mirror copy operation completed without a hitch, and the test files I created on the drive were still there.

The interesting thing was what I did next. Once RAID 1 was established, I went into Disk Manager and attempted to convert the basic disk to a dynamic disk. It was unable to do so! It reported that there was not enough space on the disk to perform the operation.

Microsoft, in its infinite wisdom, reserves space at the end of a disk (when formatted with an appropriate operating system!) JUST IN CASE you want to convert the disk to a dynamic disk at some point in the future...whether or not you actually ever do. This means that even if you create a basic disk, it does not allocate the entire free disk space to a partition (if you create a partition to use the whole disk). However, if you create a dynamic disk or convert a basic disk to a dynamic disk, then an LDM database is created in this unallocated space at the end of the disk.

Dynamic disks do not make use of the partition table found at the beginning of basic disks. However, because the computer still needs to know how to boot, dynamic disks carry a kind of spoofed partition table at the beginning of the disk to tell the BIOS where the boot partition is. All the disk structure information is contained in the LDM database at the end of the disk.

What appears to be happening with the RAID controller is that as soon as RAID level 1 is established, it either adds some information of its own to the end of the disk, or resizes the main partition to consume the entire free space (including the area that Microsoft reserves for the LDM database). Therefore, if you are trying to mirror a dynamic disk, it corrupts the LDM database and the volume can no longer be mounted. And if you mirror a basic disk, you cannot convert it to a dynamic disk (NOT THAT I WOULD EVER WANT TO AGAIN!), because there is no room to put the LDM database.

Now, what I don't understand is that the whole idea behind dynamic disks is that they contain all the information about their configuration (including assigned drive letter, etc.) in the LDM database so the disk could be moved to another computer and it would show up just the same (not that I ever had any problem with that with basic disks). Also, dynamic disks are supposed to support fault-tolerant configurations. So, why, then, does Windows XP Pro, which supports dynamic disks as well as having functionality for managing REMOTE fault-tolerant configurations (on Windows 2000 servers), NOT support fault-tolerant configurations on ITSELF?! WHY?!?!

Just imagine all the spewing, spiteful rage and hate that Microsoft could have avoided if they just allowed me to have a good day! I have to wonder if Microsoft has ever been introduced to the concept of simplicity. I imagine it must have been brought up in an engineering meeting at one point, but it was probably rejected. And the radical engineer who proposed it probably works for Borland, now, making tools that are actually usable.

All is [apparently] well in the end. It better be, anyway. I finally got the RAID 1 configuration up and running, and the drive that contains all my life's work is now being copied to its mirror drive as I write this text. It is 55% done. Once it is done, I will then be free to clean up some files that I have shuffled around in the process, and I can put away the programs I wrote to validate my file integrity, save all my critical files to DVD or CD and put them in a vault somewhere, and be ready for the next disaster that awaits me. But have no fear - the Computer Circus always presents new and unexpected acts. In fact, I just this moment heard a click and it sounded like a drive spun down. This may be normal, as I did enable the power saving options so idle disks are powered down (I think it is my C: drive), so I will refrain from screaming and throwing things until I know for sure.

I'll be right back...

I'm safe! It was the C: drive. I just had to open "My Computer" to access the drive, and it came back online. I should probably extend the time-out period to prevent the drive from turning on and off so frequently (I think it is set for ten minutes). Occasionally, the mysterious Microsoft operating system will do things in the background that result in an access to C: all by itself, causing it to wake up again.

Stay tuned for the next act. Hopefully, the next one will be a good one!

posted by Bill  # 12:00 PM