How to stop DiskSuite resyncing a mirror on Solaris 8

January 23, 2007

One of our irritations with DiskSuite has been that it has no way to abort a mirror resync short of forcing drive errors, something that we actually had to resort to once and which is not always possible, for example when your drives are logical LUNs on FibreChannel RAID controllers.

As we found out recently, fortunately not quite the hard way, it turns out that there actually is a way to abort a mirror resync. If your resyncing mirror is in a diskset, running 'metaset -s <set> -r' to release the diskset so you can fail it over to another machine will first abort the resync and then fail.

(It fails with the helpful, ever so explanatory error message 'metaset: <host>: Device busy'. If you repeat the metaset command again, it will work and actually release the diskset, although your higher-level failover tools may be in a bit of a tizzy at this point. The machine that picks up the diskset seems to automatically restart the resync, although it starts again from scratch.)

I can sort of see why DiskSuite behaves this way, but its current behavior is annoyingly half-hearted. Regardless of what you really wanted to happen in this situation, you wind up with about half of it.

(My grumpyness is increased because I suspect the only reason metaset aborts the resync is that otherwise you would have no way of releasing the diskset until the resync had finished. Which is all DiskSuite's fault, for not having a way of explicitly aborting resyncs.)

Written on 23 January 2007.
« Why host authentication has to check who the certificate belongs to
An irritation with current GUI interfaces »

Page tools: View Source, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Tue Jan 23 23:19:30 2007
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.