[zfs-discuss] Extremely slow zpool scrub performance

2011-05-13 Thread Donald Stahl
Running a zpool scrub on our production pool is showing a scrub rate of about 400K/s. (When this pool was first set up we saw rates in the MB/s range during a scrub). Both zpool iostat and an iostat -Xn show lots of idle disk times, no above average service times, no abnormally high busy percentag

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-14 Thread Donald Stahl
> The scrub I/O has lower priority than other I/O. > > In later ZFS releases, scrub I/O is also throttled. When the throttle > kicks in, the scrub can drop to 5-10 IOPS. This shouldn't be much of > an issue, scrubs do not need to be, and are not intended to be, run > very often -- perhaps once a qu

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-16 Thread Donald Stahl
> Can you share your 'zpool status' output for both pools? Faster, smaller server: ~# zpool status pool0 pool: pool0 state: ONLINE scan: scrub repaired 0 in 2h18m with 0 errors on Sat May 14 13:28:58 2011 Much larger, more capable server: ~# zpool status pool0 | head pool: pool0 state: ONLINE

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-16 Thread Donald Stahl
> Can you send the entire 'zpool status' output? I wanted to see your > pool configuration. Also run the mdb command in a loop (at least 5 > tiimes) so we can see if spa_last_io is changing. I'm surprised you're > not finding the symbol for 'spa_scrub_inflight' too.  Can you check > that you didn't

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-16 Thread Donald Stahl
> I copy and pasted to make sure that wasn't the issue :) Which, ironically, turned out to be the problem- there was an extra carriage return in there that mdb did not like: Here is the output: spa_name = [ "pool0" ] spa_last_io = 0x82721a4 spa_scrub_inflight = 0x1 spa_name = [ "pool0" ] spa_las

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-16 Thread Donald Stahl
Here is another example of the performance problems I am seeing: ~# dd if=/dev/zero of=/pool0/ds.test bs=1024k count=2000 2000+0 records in 2000+0 records out 2097152000 bytes (2.1 GB) copied, 56.2184 s, 37.3 MB/s 37MB/s seems like some sort of bad joke for all these disks. I can write the same a

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-16 Thread Donald Stahl
> You mentioned that the pool was somewhat full, can you send the output > of 'zpool iostat -v pool0'? ~# zpool iostat -v pool0 capacity operationsbandwidth poolalloc free read write read write -- - - - - -

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-16 Thread Donald Stahl
> You mentioned that the pool was somewhat full, can you send the output > of 'zpool iostat -v pool0'? You can also try doing the following to > reduce 'metaslab_min_alloc_size' to 4K: > > echo "metaslab_min_alloc_size/Z 1000" | mdb -kw So just changing that setting moved my write rate from 40MB/s

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-16 Thread Donald Stahl
As a followup: I ran the same DD test as earlier- but this time I stopped the scrub: pool0 14.1T 25.4T 88 4.81K 709K 262M pool0 14.1T 25.4T104 3.99K 836K 248M pool0 14.1T 25.4T360 5.01K 2.81M 230M pool0 14.1T 25.4T305 5.69K 2.38M 231M

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-17 Thread Donald Stahl
> metaslab_min_alloc_size is not the metaslab size. From the source Sorry- that was simply a slip of the mind- it was a long day. > By reducing this value, it is easier for the allocator to identify a > metaslab for allocation as the file system becomes full. Thank you for clarifying. Is there a

[zfs-discuss] Adjusting the volblocksize for iscsi VMFS backing stores

2011-05-17 Thread Donald Stahl
I posted this to the forums a little while ago but I believe the list was split at the time: Does anyone have any recommendations for changing the ZFS volblocksize when creating zfs volumes to serve as VMFS backing stores? I've seen several people recommend that the volblocksize be set to 64k in

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-18 Thread Donald Stahl
Wow- so a bit of an update: With the default scrub delay: echo "zfs_scrub_delay/K" | mdb -kw zfs_scrub_delay:20004 pool0 14.1T 25.3T165499 1.28M 2.88M pool0 14.1T 25.3T146 0 1.13M 0 pool0 14.1T 25.3T147 0 1.14M 0 pool0 14.1T

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-18 Thread Donald Stahl
> Try setting the zfs_scrub_delay to 1 but increase the > zfs_top_maxinflight to something like 64. The array is running some regression tests right now but when it quiets down I'll try that change. -Don ___ zfs-discuss mailing list zfs-discuss@opensolar

Re: [zfs-discuss] Extremely slow zpool scrub performance

2011-05-18 Thread Donald Stahl
>> Try setting the zfs_scrub_delay to 1 but increase the >> zfs_top_maxinflight to something like 64. With the delay set to 1 or higher it doesn't matter what I set the maxinflight value to- when I check with: echo "::walk spa | ::print spa_t spa_name spa_last_io spa_scrub_inflight" The value ret

Re: [zfs-discuss] Bad pool...

2011-05-24 Thread Donald Stahl
> Two drives have been resilvered, but the old drives still stick. The drive > that has died still hasn't been taken over by a spare, although the two > spares show up as AVAIL. For the one that hasn't been replaced try doing: zpool replace dbpool c8t24d0 c4t43d0 For the two that have already be

Re: [zfs-discuss] Should Intel X25-E not be used with a SAS Expander?

2011-06-02 Thread Donald Stahl
> Yup; reset storms affected us as well (we were using the X-25 series > for ZIL/L2ARC).  Only the ZIL drives were impacted, but it was a large > impact :) What did you see with your reset storm? Were there log errors in /var/adm/messages or did you need to check the controller loogs with something

Re: [zfs-discuss] Wired write performance problem

2011-06-07 Thread Donald Stahl
>> One day, the write performance of zfs degrade. >> The write performance decrease from 60MB/s to about 6MB/s in sequence >> write. >> >> Command: >> date;dd if=/dev/zero of=block bs=1024*128 count=1;date See this thread: http://www.opensolaris.org/jive/thread.jspa?threadID=139317&tstart=45

Re: [zfs-discuss] Wired write performance problem

2011-06-08 Thread Donald Stahl
> In Solaris 10u8: > root@nas-hz-01:~# uname -a > SunOS nas-hz-01 5.10 Generic_141445-09 i86pc i386 i86pc > root@nas-hz-01:~# echo "metaslab_min_alloc_size/K" | mdb -kw > mdb: failed to dereference symbol: unknown symbol name Fair enough. I don't have anything older than b147 at this point so I was

Re: [zfs-discuss] Wired write performance problem

2011-06-08 Thread Donald Stahl
> Another (less satisfying) workaround is to increase the amount of free space > in the pool, either by reducing usage or adding more storage. Observed > behavior is that allocation is fast until usage crosses a threshhold, then > performance hits a wall. We actually tried this solution. We were at

Re: [zfs-discuss] Wired write performance problem

2011-06-08 Thread Donald Stahl
> There is snapshot of metaslab layout, the last 51 metaslabs have 64G free > space. After we added all the disks to our system we had lots of free metaslabs- but that didn't seem to matter. I don't know if perhaps the system was attempting to balance the writes across more of our devices but whate