[zfs-discuss] Re: NFS Performance and Tar

2006-10-03 Thread Ben Rockwood
I was really hoping for some option other than ZIL_DISABLE, but finally gave up 
the fight.  Some people suggested NFSv4 helping over NFSv3 but it didn't... at 
least not enough to matter.

ZIL_DISABLE was the solution, sadly.  I'm running B43/X86 and hoping to get up 
to 48 or so soonish (I BFU'd it straight to B48 last night and brick'ed it).

Here are the times.  This is an untar (gtar xfj) of SIDEkick 
(http://www.cuddletech.com/blog/pivot/entry.php?id=491) on NFSv4 on a 20TB 
RAIDZ2 ZFS Pool:

ZIL Enabled:
real1m26.941s

ZIL Disabled:
real0m5.789s


I'll update this post again when I finally get B48 or newer on the system and 
try it.  Thanks to everyone for their suggestions.

benr.
 
 
This message posted from opensolaris.org
___
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss


Re: [zfs-discuss] Re: NFS Performance and Tar

2006-10-03 Thread Spencer Shepler
On Tue, eric kustarz wrote:
 Ben Rockwood wrote:
 I was really hoping for some option other than ZIL_DISABLE, but finally 
 gave up the fight.  Some people suggested NFSv4 helping over NFSv3 but it 
 didn't... at least not enough to matter.
 
 ZIL_DISABLE was the solution, sadly.  I'm running B43/X86 and hoping to 
 get up to 48 or so soonish (I BFU'd it straight to B48 last night and 
 brick'ed it).
 
 Here are the times.  This is an untar (gtar xfj) of SIDEkick 
 (http://www.cuddletech.com/blog/pivot/entry.php?id=491) on NFSv4 on a 20TB 
 RAIDZ2 ZFS Pool:
 
 ZIL Enabled:
 real1m26.941s
 
 ZIL Disabled:
 real0m5.789s
 
 
 I'll update this post again when I finally get B48 or newer on the system 
 and try it.  Thanks to everyone for their suggestions.
 
 
 I imagine what's happening is that tar is a single-threaded application 
 and it's basically doing: open, asynchronous write, close.  This will go 
 really fast locally.  But for NFS due to the way it does cache 
 consistency, on CLOSE, it must make sure that the writes are on stable 
 storage, so it does a COMMIT, which basically turns your asynchronous 
 write into a synchronous write.  Which means you basically have a 
 single-threaded app doing synchronous writes- ~ 1/2 disk rotational 
 latency per write.
 
 Check out 'mount_nfs(1M)' and the 'nocto' option.  It might be ok for 
 you to relax the cache consistency for client's mount as you untar the 
 file(s).  Then remount w/out the 'nocto' option once you're done.

This will not correct the problem because tar is extracting and therefore
creating files and directories; those creates will be synchronous at
the NFS server and there is no method to change this behavior at the
client.

Spencer

 
 Another option is to run multiple untars together.  I'm guessing that 
 you've got I/O to spare from ZFS's point of view.
 
 eric
 
 ___
 zfs-discuss mailing list
 zfs-discuss@opensolaris.org
 http://mail.opensolaris.org/mailman/listinfo/zfs-discuss
___
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss


[zfs-discuss] panic string assistance

2006-10-03 Thread Frank Leers
Could someone offer insight into this panic, please?  


panic string:   ZFS: I/O failure (write on unknown off 0: zio
6000c5fbc0
0 [L0 ZIL intent log] 1000L/1000P DVA[0]=1:249b68000:1000 zilog uncompre
ssed BE contiguous birth=318892 fill=0 cksum=3b8f19730caa4327:9e102
 panic kernel thread: 0x2a1015d7cc0  PID: 0  on CPU: 530 
cmd: sched
t_procp: 0x187c780(proc_sched)
  p_as: 0x187e4d0(kas)
  zone: global
t_stk: 0x2a1015d7ad0  sp: 0x18aa901  t_stkbase: 0x2a1015d2000
t_pri: 99(SYS)  pctcpu: 0.00
t_lwp: 0x0psrset: 0  last CPU: 530  
idle: 0 ticks (0 seconds)
start: Wed Sep 20 18:17:22 2006
age: 1788 seconds (29 minutes 48 seconds)
tstate: TS_ONPROC - thread is being run on a processor
tflg:   T_TALLOCSTK - thread structure allocated from stk
T_PANIC - thread initiated a system panic
tpflg:  none set
tsched: TS_LOAD - thread is in memory
TS_DONT_SWAP - thread/LWP should not be swapped
TS_SIGNALLED - thread was awakened by cv_signal()
pflag:  SSYS - system resident process

pc:  0x105f7f8  unix:panicsys+0x48:   call  unix:setjmp
startpc: 0x119fa64  genunix:taskq_thread+0x0:   save%sp, -0xd0, %sp

unix:panicsys+0x48(0x7b6e53a0, 0x2a1015d77c8, 0x18ab2d0, 0x1, , , 0x4480001601, 
, , , , , , , 0x7b6e53a0, 0x2a1015d77c8)
unix:vpanic_common+0x78(0x7b6e53a0, 0x2a1015d77c8, 0x7b6e3bf8, 0x7080bc30, 0x708
0bc70, 0x7080b840)
unix:panic+0x1c(0x7b6e53a0, 0x7080bbf0, 0x7080bbc0, 0x7b6e4428, 0x0, 0x6000c5fbc
00, , 0x5)
zfs:zio_done+0x284(0x6000c5fbc00)
zfs:zio_next_stage(0x6000c5fbc00) - frame recycled
zfs:zio_vdev_io_assess+0x178(0x6000c5fbc00, 0x6000c586da0, 0x7b6c79f0)
genunix:taskq_thread+0x1a4(0x6000bc5ea38, 0x0)
unix:thread_start+0x4()

___
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss


Re: [zfs-discuss] panic string assistance

2006-10-03 Thread Max Bruning
Hi,
No, I can't offer insight, but I do have some questions
that are not really on topic.

What version of solaris are you running?  Is this
the console output at time of panic?  When did the
panic code (or mdb) learn about frame recycling?
Or are you using scat to get this output?

thanks,
max

On Tue, 2006-10-03 at 14:10 -0700, Frank Leers wrote:
 Could someone offer insight into this panic, please?  
 
 
 panic string:   ZFS: I/O failure (write on unknown off 0: zio
 6000c5fbc0
 0 [L0 ZIL intent log] 1000L/1000P DVA[0]=1:249b68000:1000 zilog uncompre
 ssed BE contiguous birth=318892 fill=0 cksum=3b8f19730caa4327:9e102
  panic kernel thread: 0x2a1015d7cc0  PID: 0  on CPU: 530 
 cmd: sched
 t_procp: 0x187c780(proc_sched)
   p_as: 0x187e4d0(kas)
   zone: global
 t_stk: 0x2a1015d7ad0  sp: 0x18aa901  t_stkbase: 0x2a1015d2000
 t_pri: 99(SYS)  pctcpu: 0.00
 t_lwp: 0x0psrset: 0  last CPU: 530  
 idle: 0 ticks (0 seconds)
 start: Wed Sep 20 18:17:22 2006
 age: 1788 seconds (29 minutes 48 seconds)
 tstate: TS_ONPROC - thread is being run on a processor
 tflg:   T_TALLOCSTK - thread structure allocated from stk
 T_PANIC - thread initiated a system panic
 tpflg:  none set
 tsched: TS_LOAD - thread is in memory
 TS_DONT_SWAP - thread/LWP should not be swapped
 TS_SIGNALLED - thread was awakened by cv_signal()
 pflag:  SSYS - system resident process
 
 pc:  0x105f7f8  unix:panicsys+0x48:   call  unix:setjmp
 startpc: 0x119fa64  genunix:taskq_thread+0x0:   save%sp, -0xd0, 
 %sp
 
 unix:panicsys+0x48(0x7b6e53a0, 0x2a1015d77c8, 0x18ab2d0, 0x1, , , 
 0x4480001601, 
 , , , , , , , 0x7b6e53a0, 0x2a1015d77c8)
 unix:vpanic_common+0x78(0x7b6e53a0, 0x2a1015d77c8, 0x7b6e3bf8, 0x7080bc30, 
 0x708
 0bc70, 0x7080b840)
 unix:panic+0x1c(0x7b6e53a0, 0x7080bbf0, 0x7080bbc0, 0x7b6e4428, 0x0, 
 0x6000c5fbc
 00, , 0x5)
 zfs:zio_done+0x284(0x6000c5fbc00)
 zfs:zio_next_stage(0x6000c5fbc00) - frame recycled
 zfs:zio_vdev_io_assess+0x178(0x6000c5fbc00, 0x6000c586da0, 0x7b6c79f0)
 genunix:taskq_thread+0x1a4(0x6000bc5ea38, 0x0)
 unix:thread_start+0x4()
 
 ___
 zfs-discuss mailing list
 zfs-discuss@opensolaris.org
 http://mail.opensolaris.org/mailman/listinfo/zfs-discuss
-- 
Max Bruning [EMAIL PROTECTED]

___
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss


Re: [zfs-discuss] panic string assistance

2006-10-03 Thread Neil Perrin

ZFS will currently panic on a write failure to a non replicated pool.
In the case below the Intent Log (though it could have been any module)
could not write an intent log block. Here's a previous response from Eric
Schrock explaining how ZFS intends to handle this:



Yes, there are three incremental fixes that we plan in this area:

6417772 need nicer message on write failure

This just cleans up the failure mode so that we get a nice
FMA failure message and can distinguish this from a random
failed assert.

6417779 ZFS: I/O failure (write on ...) -- need to reallocate writes

In a multi-vdev pool, this would take a failed write and attempt
to do the write on another toplevel vdev.  This would all but
elminate the problem for multi-vdev pools.

6322646 ZFS should gracefully handle all devices failing (when writing)

This is the real fix.  Unfortunately, it's also really hard.
Even if we manage to abort the current transaction group,
dealing with the semantics of a filesystem which has lost an
arbitrary amount of change and notifying the user in a
meaningful way is difficult at best.

Hope that helps.

- Eric

Frank Leers wrote On 10/03/06 15:10,:
Could someone offer insight into this panic, please?  



panic string:   ZFS: I/O failure (write on unknown off 0: zio
6000c5fbc0
0 [L0 ZIL intent log] 1000L/1000P DVA[0]=1:249b68000:1000 zilog uncompre
ssed BE contiguous birth=318892 fill=0 cksum=3b8f19730caa4327:9e102
 panic kernel thread: 0x2a1015d7cc0  PID: 0  on CPU: 530 
cmd: sched
t_procp: 0x187c780(proc_sched)
  p_as: 0x187e4d0(kas)
  zone: global
t_stk: 0x2a1015d7ad0  sp: 0x18aa901  t_stkbase: 0x2a1015d2000
t_pri: 99(SYS)  pctcpu: 0.00
t_lwp: 0x0psrset: 0  last CPU: 530  
idle: 0 ticks (0 seconds)

start: Wed Sep 20 18:17:22 2006
age: 1788 seconds (29 minutes 48 seconds)
tstate: TS_ONPROC - thread is being run on a processor
tflg:   T_TALLOCSTK - thread structure allocated from stk
T_PANIC - thread initiated a system panic
tpflg:  none set
tsched: TS_LOAD - thread is in memory
TS_DONT_SWAP - thread/LWP should not be swapped
TS_SIGNALLED - thread was awakened by cv_signal()
pflag:  SSYS - system resident process

pc:  0x105f7f8  unix:panicsys+0x48:   call  unix:setjmp
startpc: 0x119fa64  genunix:taskq_thread+0x0:   save%sp, -0xd0, %sp

unix:panicsys+0x48(0x7b6e53a0, 0x2a1015d77c8, 0x18ab2d0, 0x1, , , 0x4480001601, 
, , , , , , , 0x7b6e53a0, 0x2a1015d77c8)

unix:vpanic_common+0x78(0x7b6e53a0, 0x2a1015d77c8, 0x7b6e3bf8, 0x7080bc30, 0x708
0bc70, 0x7080b840)
unix:panic+0x1c(0x7b6e53a0, 0x7080bbf0, 0x7080bbc0, 0x7b6e4428, 0x0, 0x6000c5fbc
00, , 0x5)
zfs:zio_done+0x284(0x6000c5fbc00)
zfs:zio_next_stage(0x6000c5fbc00) - frame recycled
zfs:zio_vdev_io_assess+0x178(0x6000c5fbc00, 0x6000c586da0, 0x7b6c79f0)
genunix:taskq_thread+0x1a4(0x6000bc5ea38, 0x0)
unix:thread_start+0x4()

___
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

___
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss


Re: [zfs-discuss] How to make an extended LUN size known to ZFS and Solaris

2006-10-03 Thread Matthew Ahrens

Michael Phua - PTS wrote:

Hi,

Our customer has an Sun Fire X4100 with Solaris 10 using ZFS and a HW RAID
array (STK D280).

He has extended a LUN on the storage array and want to make this new size
known to ZFS and Solaris.

Does anyone know if this can be done and how it can be done.


Unfortunately, there's no good way to do this at the moment.

When you give ZFS the whole disk, we put a EFI label on the disk and 
make one big slice for our use.  However, when the LUN grows, that slice 
stays the same size.  ZFS needs to write a new EFI label describing the 
new size, before it can use the new space.  I've filed bug 6475340 to 
track this issue.


As a workaround, it *should* be possible to manually relabel the device 
with format(1m), but unfortunately bug 4967547 (a problem with format) 
prevents this from working correctly.


--matt
___
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss