Date: Wed, 03 Jul 2013 17:40:34 +0300 From: Daniel Kalchev <daniel@digsys.bg> To: mxb <mxb@alumni.chalmers.se> Cc: freebsd-fs@freebsd.org Subject: Re: Slow resilvering with mirrored ZIL Message-ID: <51D437E2.4060101@digsys.bg> In-Reply-To: <2EF46A8C-6908-4160-BF99-EC610B3EA771@alumni.chalmers.se> References: <CABBFC07-68C2-4F43-9AFC-920D8C34282E@unixconn.com> <51D42107.1050107@digsys.bg> <2EF46A8C-6908-4160-BF99-EC610B3EA771@alumni.chalmers.se>
next in thread | previous in thread | raw e-mail | index | archive | help
On 03.07.13 16:36, mxb wrote: > Well, then my question persists - why I get so significant drop of speed while resilvering second drive. > The only changes to the system are: > > 1. Second partition for ZIL to create a mirror > 2. New disks are 7200rpm. old ones are 5400rpm. > I can't see how the ZIL can be involved in resilvering. The ZIL is only used when you write synchronous data to the pool, which is not happening during resilver. As mentioned already, you do not need ZIL during the resilver and you can zpool remove the ZIL drives from your pool to verify. What is happening during resilver is reading from the other drives in the vdev and writing to the new drive. You mention four drives so I assume this is an raidz? Is it possible that the old drives and the zpool vdev(s) are 512byte sector size and the new drive is 4k sector size? If so, you might experience severe slowdown. The only way to fix this situation is to recreate the zpool -- copy data out of the pool, create the pool with 4k alignment for vdevs and copy data back. You can check the ashift property in the output of zdb. If ashift=9 you have 512 byte sector vdev(s). If ashift=12 you have an 4k sector vdev(s). In any case, you can easily rule out the effects of ZIL on your pool by just removing the log devices. Daniel
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?51D437E2.4060101>