Hmmm - this is an annoying one.
I''m currently running an OpenSolaris install (2008.11 upgraded to
2009.06) :
SunOS shemhazai 5.11 snv_111b i86pc i386 i86pc Solaris
with a zpool made up of one radiz vdev and a small ramdisk based zil. I usually
swap out the zil for a file-based copy when I need to reboot (zpool replace
/dev/ramdisk/slog /root/slog.tmp) but this time I had a brain fart and forgot
to.
The server came back up and I could sort of work on the zpool but it was
complaining so I did my replace command and it happily resilvered. Then I
restarted one more time in order to test bringing everything up cleanly and this
time it can''t find the file based zil.
I try importing and it comes back with:
zpool import
pool: siovale
id: 13808783103733022257
state: UNAVAIL
status: One or more devices are missing from the system.
action: The pool cannot be imported. Attach the missing
devices and try again.
see: http://www.sun.com/msg/ZFS-8000-6X
config:
siovale UNAVAIL missing device
raidz1 ONLINE
c8d0 ONLINE
c9d0 ONLINE
c10d0 ONLINE
c11d0 ONLINE
Additional devices are known to be part of this pool, though their
exact configuration cannot be determined.
Now the file still exists so I don''t know why it can''t seem to
find it and I thought the missing zil issue was corrected in this version (or
did I miss something?).
I''ve looked around for solutions to bring it back online and ran across
this method: <http://www.mail-archive.com/zfs-discuss at
opensolaris.org/msg16545.html> but before I jump in on this one I was hoping
there was a newer, cleaner approach that I missed somehow.
Ideas appreciated...
Erik
Do you have a backup copy of your zpool.cache file? If you have that file, ZFS will happily mount a pool on boot without its slog device - it''ll just flag the slog as faulted and you can do your normal replace. I used that for a long while on a test server with a ramdisk slog - and I never needed to swap it to a file based slog. However without a backup of that file to make zfs load the pool on boot I don''t believe there is any way to import that pool. -- This message posted from opensolaris.org
I believe this is relevant: http://github.com/pjjw/logfix Saved my array last year, looks maintained. On 27/09/2009, at 4:49 AM, Erik Ableson wrote:> Hmmm - this is an annoying one. > > I''m currently running an OpenSolaris install (2008.11 upgraded to > 2009.06) : > SunOS shemhazai 5.11 snv_111b i86pc i386 i86pc Solaris > > with a zpool made up of one radiz vdev and a small ramdisk based > zil. I usually swap out the zil for a file-based copy when I need > to reboot (zpool replace /dev/ramdisk/slog /root/slog.tmp) but this > time I had a brain fart and forgot to. > > The server came back up and I could sort of work on the zpool but it > was complaining so I did my replace command and it happily > resilvered. Then I restarted one more time in order to test > bringing everything up cleanly and this time it can''t find the file > based zil. > > I try importing and it comes back with: > zpool import > pool: siovale > id: 13808783103733022257 > state: UNAVAIL > status: One or more devices are missing from the system. > action: The pool cannot be imported. Attach the missing > devices and try again. > see: http://www.sun.com/msg/ZFS-8000-6X > config: > > siovale UNAVAIL missing device > raidz1 ONLINE > c8d0 ONLINE > c9d0 ONLINE > c10d0 ONLINE > c11d0 ONLINE > > Additional devices are known to be part of this pool, though > their > exact configuration cannot be determined. > > Now the file still exists so I don''t know why it can''t seem to find > it and I thought the missing zil issue was corrected in this version > (or did I miss something?). > > I''ve looked around for solutions to bring it back online and ran > across this method: <http://www.mail-archive.com/zfs-discuss at opensolaris.org/msg16545.html > > but before I jump in on this one I was hoping there was a newer, > cleaner approach that I missed somehow. > > Ideas appreciated... > > Erik > > _______________________________________________ > zfs-discuss mailing list > zfs-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/zfs-discuss
Hmmm - I''ve got a fairly old copy of the zpool cache file (circa July), but nothing structural has changed in pool since that date. What other data is held in that file? There have been some filesystem changes, but nothing critical is in the newer filesystems. Any particular procedure required for swapping out the zpool.cache file? Erik On Sunday, 27 September, 2009, at 12:28AM, "Ross" <myxiplx at googlemail.com> wrote:>Do you have a backup copy of your zpool.cache file? > >If you have that file, ZFS will happily mount a pool on boot without its slog device - it''ll just flag the slog as faulted and you can do your normal replace. I used that for a long while on a test server with a ramdisk slog - and I never needed to swap it to a file based slog. > >However without a backup of that file to make zfs load the pool on boot I don''t believe there is any way to import that pool.
Good link - thanks. I''m looking at the details for that one and
learning a little zdb at the same time. I''ve got a situation perhaps a
little different in that I _do_ have a current copy of the slog in a file with
what appears to be current data.
However, I don''t see how to attach the slog file to an offline zpool -
I have both a dd backup of the ramdisk slog from midnight as well as the current
file based slog :
zdb -l /root/slog.tmp
version=14
name=''siovale''
state=1
txg=4499446
pool_guid=13808783103733022257
hostid=4834000
hostname=''shemhazai''
top_guid=6374488381605474740
guid=6374488381605474740
is_log=1
vdev_tree
type=''file''
id=1
guid=6374488381605474740
path=''/root/slog.tmp''
metaslab_array=230
metaslab_shift=21
ashift=9
asize=938999808
is_log=1
DTL=51
Is there any way that I can attach this slog to the zpool while it''s
offline?
Erik
On 27 sept. 2009, at 02:23, David Turnbull <dsturnbull at gmail.com>
wrote:
> I believe this is relevant: http://github.com/pjjw/logfix
> Saved my array last year, looks maintained.
>
> On 27/09/2009, at 4:49 AM, Erik Ableson wrote:
>
>> Hmmm - this is an annoying one.
>>
>> I''m currently running an OpenSolaris install (2008.11 upgraded
to
>> 2009.06) :
>> SunOS shemhazai 5.11 snv_111b i86pc i386 i86pc Solaris
>>
>> with a zpool made up of one radiz vdev and a small ramdisk based
>> zil. I usually swap out the zil for a file-based copy when I need
>> to reboot (zpool replace /dev/ramdisk/slog /root/slog.tmp) but this
>> time I had a brain fart and forgot to.
>>
>> The server came back up and I could sort of work on the zpool but
>> it was complaining so I did my replace command and it happily
>> resilvered. Then I restarted one more time in order to test
>> bringing everything up cleanly and this time it can''t find the
file
>> based zil.
>>
>> I try importing and it comes back with:
>> zpool import
>> pool: siovale
>> id: 13808783103733022257
>> state: UNAVAIL
>> status: One or more devices are missing from the system.
>> action: The pool cannot be imported. Attach the missing
>> devices and try again.
>> see: http://www.sun.com/msg/ZFS-8000-6X
>> config:
>>
>> siovale UNAVAIL missing device
>> raidz1 ONLINE
>> c8d0 ONLINE
>> c9d0 ONLINE
>> c10d0 ONLINE
>> c11d0 ONLINE
>>
>> Additional devices are known to be part of this pool, though
>> their
>> exact configuration cannot be determined.
>>
>> Now the file still exists so I don''t know why it
can''t seem to find
>> it and I thought the missing zil issue was corrected in this
>> version (or did I miss something?).
>>
>> I''ve looked around for solutions to bring it back online and
ran
>> across this method: <http://www.mail-archive.com/zfs-discuss at
opensolaris.org/msg16545.html
>> > but before I jump in on this one I was hoping there was a newer,
>> cleaner approach that I missed somehow.
>>
>> Ideas appreciated...
>>
>> Erik
>>
>> _______________________________________________
>> zfs-discuss mailing list
>> zfs-discuss at opensolaris.org
>> http://mail.opensolaris.org/mailman/listinfo/zfs-discuss
>
On 27.09.09 14:34, Erik Ableson wrote:> Hmmm - I''ve got a fairly old copy of the zpool cache file (circa July), but > nothing structural has changed in pool since that date. What other data is held > in that file? There have been some filesystem changes, but nothing critical is > in the newer filesystems.Cache file keeps pool configuration so zfs can quickly open it upon reboot. If there were no changes to the configuration of pool vdevs, then it should describe good config. victor> > Any particular procedure required for swapping out the zpool.cache file? > > Erik > > On Sunday, 27 September, 2009, at 12:28AM, "Ross" <myxiplx at googlemail.com> wrote: >> Do you have a backup copy of your zpool.cache file? >> >> If you have that file, ZFS will happily mount a pool on boot without its slog device - it''ll just flag the slog as faulted and you can do your normal replace. I used that for a long while on a test server with a ramdisk slog - and I never needed to swap it to a file based slog. >> >> However without a backup of that file to make zfs load the pool on boot I don''t believe there is any way to import that pool. > _______________________________________________ > zfs-discuss mailing list > zfs-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/zfs-discuss-- -- Victor Latushkin phone: x11467 / +74959370467 TSC-Kernel EMEA mobile: +78957693012 Sun Services, Moscow blog: http://blogs.sun.com/vlatushkin Sun Microsystems
On 27.09.09 19:35, Erik Ableson wrote:> Good link - thanks. I''m looking at the details for that one and learning a > little zdb at the same time. I''ve got a situation perhaps a little different in > that I _do_ have a current copy of the slog in a file with what appears to be > current data. > > However, I don''t see how to attach the slog file to an offline zpool - I have > both a dd backup of the ramdisk slog from midnight as well as the current file > based slog :Have you tried to make symbolic link from e.g. /dev/dsk/slog to /root/slog.tmp and check what ''zpool import'' says?> zdb -l /root/slog.tmp > > version=14 > name=''siovale'' > state=1 > txg=4499446 > pool_guid=13808783103733022257 > hostid=4834000 > hostname=''shemhazai'' > top_guid=6374488381605474740 > guid=6374488381605474740 > is_log=1 > vdev_tree > type=''file'' > id=1 > guid=6374488381605474740 > path=''/root/slog.tmp'' > metaslab_array=230 > metaslab_shift=21 > ashift=9 > asize=938999808 > is_log=1 > DTL=51 > > Is there any way that I can attach this slog to the zpool while it''s offline? > > Erik > > On 27 sept. 2009, at 02:23, David Turnbull <dsturnbull at gmail.com> wrote: > >> I believe this is relevant: http://github.com/pjjw/logfix >> Saved my array last year, looks maintained. >> >> On 27/09/2009, at 4:49 AM, Erik Ableson wrote: >> >>> Hmmm - this is an annoying one. >>> >>> I''m currently running an OpenSolaris install (2008.11 upgraded to >>> 2009.06) : >>> SunOS shemhazai 5.11 snv_111b i86pc i386 i86pc Solaris >>> >>> with a zpool made up of one radiz vdev and a small ramdisk based >>> zil. I usually swap out the zil for a file-based copy when I need >>> to reboot (zpool replace /dev/ramdisk/slog /root/slog.tmp) but this >>> time I had a brain fart and forgot to. >>> >>> The server came back up and I could sort of work on the zpool but >>> it was complaining so I did my replace command and it happily >>> resilvered. Then I restarted one more time in order to test >>> bringing everything up cleanly and this time it can''t find the file >>> based zil. >>> >>> I try importing and it comes back with: >>> zpool import >>> pool: siovale >>> id: 13808783103733022257 >>> state: UNAVAIL >>> status: One or more devices are missing from the system. >>> action: The pool cannot be imported. Attach the missing >>> devices and try again. >>> see: http://www.sun.com/msg/ZFS-8000-6X >>> config: >>> >>> siovale UNAVAIL missing device >>> raidz1 ONLINE >>> c8d0 ONLINE >>> c9d0 ONLINE >>> c10d0 ONLINE >>> c11d0 ONLINE >>> >>> Additional devices are known to be part of this pool, though >>> their >>> exact configuration cannot be determined. >>> >>> Now the file still exists so I don''t know why it can''t seem to find >>> it and I thought the missing zil issue was corrected in this >>> version (or did I miss something?). >>> >>> I''ve looked around for solutions to bring it back online and ran >>> across this method: <http://www.mail-archive.com/zfs-discuss at opensolaris.org/msg16545.html >>>> but before I jump in on this one I was hoping there was a newer, >>> cleaner approach that I missed somehow. >>> >>> Ideas appreciated... >>> >>> Erik >>> >>> _______________________________________________ >>> zfs-discuss mailing list >>> zfs-discuss at opensolaris.org >>> http://mail.opensolaris.org/mailman/listinfo/zfs-discuss > > _______________________________________________ > zfs-discuss mailing list > zfs-discuss at opensolaris.org > http://mail.opensolaris.org/mailman/listinfo/zfs-discuss-- -- Victor Latushkin phone: x11467 / +74959370467 TSC-Kernel EMEA mobile: +78957693012 Sun Services, Moscow blog: http://blogs.sun.com/vlatushkin Sun Microsystems
On 27.09.09 02:28, Ross wrote:> Do you have a backup copy of your zpool.cache file? > > If you have that file, ZFS will happily mount a pool on boot without its slog > device - it''ll just flag the slog as faulted and you can do your normal > replace. I used that for a long while on a test server with a ramdisk slog - > and I never needed to swap it to a file based slog. > > However without a backup of that file to make zfs load the pool on boot I > don''t believe there is any way to import that pool.If there''s no backup of that file, contents of it can be constructed by extracting contents of config object from the pool and using it to construct cachefile (basically creating nvlist with single name-value pair, where name is name of the pool and value is nvlist from the config object). -- -- Victor Latushkin phone: x11467 / +74959370467 TSC-Kernel EMEA mobile: +78957693012 Sun Services, Moscow blog: http://blogs.sun.com/vlatushkin Sun Microsystems