There may be times when trying a metareplace or metasync fails and the metadevice is still left in a "Needs Maintenance" state. One of the disks maybe experiencing a problem on a sector.
the mirror d10 is in a "Need Maintenance" state for both submirrors:
# metastat d10
d10: Mirror
Submirror 0: d0
State: Needs maintenance
Submirror 1: d1
State: Needs maintenance
Cause
When trying to run the metasync command, the c1t0d0s0 device reported errors in /var/adm/messages:
################################################################3
: /pci@8,600000/SUNW,qlc@2/fp@0,0/ssd@w2100002037f396c9,0 (ssd1):
Error for Command: read(10) Error Level: Retryable
Requested Block: 4057844 Error Block: 405796
: Vendor: SEAGATE Serial Number: 0107D1MVCF
Sense Key: Media Error
ASC: 0x11 (unrecovered read error), ASCQ: 0x0, FRU: 0xe4
Sep 15 09:11:19 bobbob scsi: WARNING: /pci@8,600000/SUNW,qlc@2/fp@0,0/ssd@w2100002037f396c9,0 (ssd1):
##########################################################
In this case, the same block is being reported as having problems.
The bad block can be fixed by running
format --> analyze --> read on the c1t0d0 disk.
eady to analyze (won't harm SunOS). This takes a long time,
but is interruptable with CTRL-C. Continue? y
pass 0
Medium error during read: block 4057969 (0x3deb71) (1404/16/101)
ASC: 0x11 ASCQ: 0x0 24619/26/53
pass 1
24619/26/53
Total of 1 defective blocks repaired.
Solution
# metasync d10
# metastat d10
# metastat d10
##########################
d10: Mirror
Submirror 0: d0
State: Needs maintenance
Submirror 1: d1
State: Okay
Pass: 1
Read option: roundrobin (default)
Write option: parallel (default)
Size: 69078879 blocks
d0: Submirror of d10
State: Needs maintenance
Invoke: after replacing "Maintenance" components:
metareplace d10 c1t0d0s0
Size: 69078879 blocks
Stripe 0:
Device Start Block Dbase State Hot Spare
c1t0d0s0 0 No Last Erred
d1: Submirror of d10
State: Okay
Size: 69078879 blocks
Stripe 0:
Device Start Block Dbase State Hot Spare
c1t1d0s0 0 No Okay
#############################################3
# metareplace -e d10 c1t0d0s0
# metastat d10
# metastat d10
now both mirror are good
###################
d10: Mirror
Submirror 0: d0
State: Okay
Submirror 1: d1
State: Okay
#######################
1 comment:
Thank you for the details updated in the Blog.
Very useful and Spot On.
Great Work Mate !
Post a Comment