Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Aug 2009 12:18:51 +0300
From:      Artis Caune <artis.caune@gmail.com>
To:        FreeBSD Current <freebsd-current@freebsd.org>
Subject:   ZFS rollback lock-up
Message-ID:  <9e20d71e0908140218h7a65d8c4g4dbe63d905a51ad8@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi,

I read in zfs admin guide and could not try this (on amd64 r196047):

- Rolling Back a Dataset Without Unmounting -
Solaris Express Community Edition, build 80: This release provides the
ability to rollback a
dataset without unmounting it first. This feature means that zfs
rollback -f option is no
longer needed to force an umount operation. The -f option is no longer
supported, and is
ignored if specified.


# zfs create tank/rollback-test
# echo 1 > /rollback-test/file
# zfs snapshot tank/rollback-test@snapshot1
# echo 2 >> /rollback-test/file
# zfs rollback tank/rollback-test@snapshot1
# cat /rollback-test/file
# zfs destroy tank/rollback-test

works great, because file system is not busy, but if I open some file
before rollback:

# vim /rollback-test/file
^Z
# fstat | grep '/rollback-test'
root     vim         1254    4 /rollback-test      7 -rw-r--r--    4096 rw
# zfs rollback tank/rollback-test@snapshot1
# fg

vim offer me to load file because it has changed, and works great, but
after rollback I can not list /rollback-test directory and all zfs
commands lock up. Reboot also hangs in unkillable processes.
After reset I can destroy dataset.


Fanny part is that I can even rollback root file system from which I boot.


I know it's crazy to "force"-rollback live file system, just
interesting why they made such change.




-- 
Artis Caune

    Everything should be made as simple as possible, but not simpler.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9e20d71e0908140218h7a65d8c4g4dbe63d905a51ad8>