DragonFly BSD
DragonFly users List (threaded) for 2013-06
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: Hammer fileystem disk full problem


From: Tim Darby <t+dfbsd@xxxxxxxxxxxx>
Date: Sun, 16 Jun 2013 06:56:37 -0700

--001a11331206a3d58e04df45db30
Content-Type: text/plain; charset=UTF-8

On Sat, Jun 15, 2013 at 11:50 AM, Matthew Dillon <
dillon@apollo.backplane.com> wrote:

>
> :>     hammer reblock <fs> 90
> :>
> :>     Each PFS needs to be independently reblocked.
> :>
> :>                                         -Matt
> :>
> :Thanks, Matt!  After doing just the 10% on each PFS, I had recovered
> enough
> :space to get back in operation.  I read the man page, but I'm still not
> :clear on what exactly the fill percentage does?
>
>     Basically HAMMER1 doesn't keep track of free space on a block-by-block
>     basis.  It keeps track of free space on a segment (~2MB) by segment
>     basis and iterates through the segment until it fills up.  In order
>     to free space, the segment has to become 100% empty.
>
>     By default the reblocker will reblock out of all storage segments,
>     which can temporarily require more storage during the run until it
>     sorts things out.  This is desireable for normal operation because
>     it defragments the disk quite well.  But it doesn't work well if the
>     filesystem is completely full.
>
>     Telling the reblocker to only reblock out of storage segments that
>     are underutilized has a better chance of clearing those segments
>     out and freeing them up before the reblocker would otherwise run out
>     of space.  Once things get cleaned up enough there should be enough
>     free space to run the reblocker in normal mode.
>
>                                                 -Matt
>
> That makes sense, thanks again!

Tim

--001a11331206a3d58e04df45db30
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:&#39;tre=
buchet ms&#39;,sans-serif;font-size:small"><span style=3D"font-family:arial=
">On Sat, Jun 15, 2013 at 11:50 AM, Matthew Dillon </span><span dir=3D"ltr"=
 style=3D"font-family:arial">&lt;<a href=3D"mailto:dillon@apollo.backplane.=
com" target=3D"_blank">dillon@apollo.backplane.com</a>&gt;</span><span styl=
e=3D"font-family:arial"> wrote:</span><br>

</div><div class=3D"gmail_extra"><div class=3D"gmail_quote"><blockquote cla=
ss=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;=
border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex=
"><br>


:&gt; =C2=A0 =C2=A0 hammer reblock &lt;fs&gt; 90<br>
<div class=3D"im">:&gt;<br>
:&gt; =C2=A0 =C2=A0 Each PFS needs to be independently reblocked.<br>
:&gt;<br>
:&gt; =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -Mat=
t<br>
:&gt;<br>
:Thanks, Matt! =C2=A0After doing just the 10% on each PFS, I had recovered =
enough<br>
:space to get back in operation. =C2=A0I read the man page, but I&#39;m sti=
ll not<br>
:clear on what exactly the fill percentage does?<br>
<br>
</div>=C2=A0 =C2=A0 Basically HAMMER1 doesn&#39;t keep track of free space =
on a block-by-block<br>
=C2=A0 =C2=A0 basis. =C2=A0It keeps track of free space on a segment (~2MB)=
 by segment<br>
=C2=A0 =C2=A0 basis and iterates through the segment until it fills up. =C2=
=A0In order<br>
=C2=A0 =C2=A0 to free space, the segment has to become 100% empty.<br>
<br>
=C2=A0 =C2=A0 By default the reblocker will reblock out of all storage segm=
ents,<br>
=C2=A0 =C2=A0 which can temporarily require more storage during the run unt=
il it<br>
=C2=A0 =C2=A0 sorts things out. =C2=A0This is desireable for normal operati=
on because<br>
=C2=A0 =C2=A0 it defragments the disk quite well. =C2=A0But it doesn&#39;t =
work well if the<br>
=C2=A0 =C2=A0 filesystem is completely full.<br>
<br>
=C2=A0 =C2=A0 Telling the reblocker to only reblock out of storage segments=
 that<br>
=C2=A0 =C2=A0 are underutilized has a better chance of clearing those segme=
nts<br>
=C2=A0 =C2=A0 out and freeing them up before the reblocker would otherwise =
run out<br>
=C2=A0 =C2=A0 of space. =C2=A0Once things get cleaned up enough there shoul=
d be enough<br>
=C2=A0 =C2=A0 free space to run the reblocker in normal mode.<br>
<br>
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 -Matt<br>
<br>
</blockquote></div><div class=3D"gmail_default" style=3D"font-family:&#39;t=
rebuchet ms&#39;,sans-serif">That makes sense, thanks again!</div><div clas=
s=3D"gmail_extra"><div><div><br></div>Tim</div></div></div></div>

--001a11331206a3d58e04df45db30--



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]