On Mon, Aug 01, 2011 at 03:10:28PM -0700, Richard Elling wrote:
> On Aug 1, 2011, at 2:16 PM, Neil Perrin wrote:
> 
> > In general the blogs conclusion is correct . When file systems get full 
> > there is
> > fragmentation (happens to all file systems) and for ZFS the pool uses gang
> > blocks of smaller blocks when there are insufficient large blocks.
> > However, the ZIL never allocates or uses gang blocks. It directly allocates
> > blocks (outside of the zio pipeline) using zio_alloc_zil() -> 
> > metaslab_alloc().
> > Gang blocks are only used by the main pool when the pool transaction
> > group (txg) commit occurs.  Solutions to the problem include:
> >   - add a separate intent log
> 
> Yes, I thought that it was odd that someone who is familiar with Oracle 
> databases,
> and their redo logs, didn't use separate intent logs.
> 
> >   - add more top level devices (hopefully replicated)
> >   - delete unused files/snapshots etc with in the poll?
> 
> If gang activity is the root cause of the performance, then they must be at 
> the
> edge of effective space utilization.
>  -- richard

The other thing that can cause a storm of tiny IOs is dedup, and this
effect can last long after space has been freed and/or dedup turned
off, until all the blocks corresponding to DDT entries are rewritten.
I wonder if this was involved here.  

--
Dan.

Attachment: pgpVl1bQEtQ1C.pgp
Description: PGP signature

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

Reply via email to