<div dir="ltr">I just wanted to confirm that I saw just this exact same issue today on a stock RHEL 4 Update 5.  Running gfs_tool reclaim made my file system "work" again.<br><br># rpm -qa | grep -e 'GFS\|cman\|magma\|ccs'|sort<br>
ccs-1.0.10-0<br>ccs-devel-1.0.10-0<br>cman-1.0.17-0<br>cman-devel-1.0.17-0<br>cman-kernel-xenU-2.6.9-50.2<br>cman-kernheaders-2.6.9-50.2<br>GFS-6.1.14-0<br>GFS-kernel-xenU-2.6.9-72.2<br>magma-1.0.7-1<br>magma-plugins-1.0.12-0<br>
<br># uname -rm<br>2.6.9-55.ELxenU x86_64<br><br><br><br><br><div class="gmail_quote">2008/7/15 Reiner Rottmann <span dir="ltr"><<a href="mailto:rottmann@atix.de">rottmann@atix.de</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello everyone,<br>
<br>
I've experienced strange behavior on a 20 GB GFS formatted volume (although<br>
same behaviour applies to smaller and larger sizes) when reaching the max<br>
available disk space by writing lots of 256 byte files in a nested directory<br>
structure (~15k files in one dir).<br>
<br>
The expected behaviour would be that all free data blocks are transformed to<br>
inodes and metadata as required but although there are still plenty<br>
datablocks free, new 256 byte files cannot be created due to "No space left<br>
on device".<br>
<br>
After that, when creating sequential files via touch, it is expected that they<br>
are created till all data blocks are transformed in inodes representing the<br>
files. When all data blocks are used, "No space left on device" is expected.<br>
But in this strange scenario, files are created at random!?<br>
<br>
Also when executing gfs_tool reclaim, new files are createable again. But<br>
gfs_tool reclaim only should increase the number of already available free<br>
data blocks by cleaning unused metadata blocks.<br>
<br>
In my understanding, it should not be necessary to reclaim blocks, if there<br>
are still free data blocks left.<br>
<br>
Has anyone an explanation for this?<br>
<br>
Best regards,<br>
<br>
Reiner Rottmann<br>
<br>
--%<---------------------------------------------------------------------------<br>
(Filesystem filled with 256 byte files.)<br>
<br>
# for i in $(seq 1 1000); do touch waste.$i; done<br>
touch: cannot touch `waste.3': No space left on device<br>
touch: cannot touch `waste.6': No space left on device<br>
touch: cannot touch `waste.12': No space left on device<br>
touch: cannot touch `waste.13': No space left on device<br>
touch: cannot touch `waste.15': No space left on device<br>
touch: cannot touch `waste.16': No space left on device<br>
touch: cannot touch `waste.20': No space left on device<br>
touch: cannot touch `waste.25': No space left on device<br>
touch: cannot touch `waste.28': No space left on device<br>
touch: cannot touch `waste.29': No space left on device<br>
touch: cannot touch `waste.32': No space left on device<br>
touch: cannot touch `waste.37': No space left on device<br>
touch: cannot touch `waste.38': No space left on device<br>
touch: cannot touch `waste.39': No space left on device<br>
touch: cannot touch `waste.48': No space left on device<br>
touch: cannot touch `waste.55': No space left on device<br>
touch: cannot touch `waste.56': No space left on device<br>
touch: cannot touch `waste.59': No space left on device<br>
touch: cannot touch `waste.60': No space left on device<br>
touch: cannot touch `waste.63': No space left on device<br>
^C<br>
<br>
# for i in $(seq 1 1000); do touch waste2.$i; done<br>
touch: cannot touch `waste2.1': No space left on device<br>
touch: cannot touch `waste2.8': No space left on device<br>
touch: cannot touch `waste2.10': No space left on device<br>
touch: cannot touch `waste2.11': No space left on device<br>
touch: cannot touch `waste2.12': No space left on device<br>
touch: cannot touch `waste2.14': No space left on device<br>
touch: cannot touch `waste2.17': No space left on device<br>
touch: cannot touch `waste2.19': No space left on device<br>
touch: cannot touch `waste2.21': No space left on device<br>
touch: cannot touch `waste2.24': No space left on device<br>
touch: cannot touch `waste2.28': No space left on device<br>
touch: cannot touch `waste2.31': No space left on device<br>
touch: cannot touch `waste2.32': No space left on device<br>
touch: cannot touch `waste2.33': No space left on device<br>
touch: cannot touch `waste2.40': No space left on device<br>
touch: cannot touch `waste2.43': No space left on device<br>
touch: cannot touch `waste2.44': No space left on device<br>
touch: cannot touch `waste2.49': No space left on device<br>
touch: cannot touch `waste2.54': No space left on device<br>
touch: cannot touch `waste2.55': No space left on device<br>
touch: cannot touch `waste2.57': No space left on device<br>
touch: cannot touch `waste2.58': No space left on device<br>
touch: cannot touch `waste2.61': No space left on device<br>
^C<br>
<br>
# gfs_tool df .<br>
/mnt/gfstest:<br>
  SB lock proto = "lock_dlm"<br>
  SB lock table = "axqa01:gfstest"<br>
  SB ondisk format = 1309<br>
  SB multihost format = 1401<br>
  Block size = 1024<br>
  Journals = 3<br>
  Resource Groups = 78<br>
  Mounted lock proto = "lock_dlm"<br>
  Mounted lock table = "axqa01:gfstest"<br>
  Mounted host data = ""<br>
  Journal number = 0<br>
  Lock module flags =<br>
  Local flocks = FALSE<br>
  Local caching = FALSE<br>
  Oopses OK = FALSE<br>
<br>
  Type           Total          Used           Free           use%<br>
  ------------------------------------------------------------------------<br>
  inodes         18343309       18343309       0              100%<br>
  metadata       1690156        1687524        2632           100%<br>
  data           43931          0              43931          0%<br>
<br>
# rpm -qa | grep -e 'GFS\|cman\|magma\|ccs'|sort<br>
GFS-6.1.15-1<br>
GFS-kernel-2.6.9-60.9<br>
GFS-kernel-2.6.9-75.11<br>
GFS-kernel-smp-2.6.9-60.9<br>
GFS-kernel-smp-2.6.9-75.11<br>
ccs-1.0.11-1<br>
cman-1.0.17-0.el4_6.3<br>
cman-kernel-smp-2.6.9-45.15<br>
cman-kernel-smp-2.6.9-53.8<br>
magma-1.0.8-1<br>
magma-devel-1.0.8-1<br>
magma-plugins-1.0.12-0<br>
<br>
# cat /etc/redhat-release<br>
Red Hat Enterprise Linux AS release 4 (Nahant Update 6)<br>
<br>
# uname -a<br>
Linux realserver10 2.6.9-67.0.4.ELsmp #1 SMP Fri Jan 18 05:00:00 EST 2008<br>
x86_64 x86_64 x86_64 GNU/Linux<br>
--%<---------------------------------------------------------------------------<br>
<br>
--<br>
Gruss / Regards,<br>
<br>
Dipl.-Ing. (FH) Reiner Rottmann<br>
<br>
Phone: +49-89 452 3538-12<br>
<br>
<a href="http://www.atix.de/" target="_blank">http://www.atix.de/</a><br>
<a href="http://open-sharedroot.org/" target="_blank">http://open-sharedroot.org/</a><br>
<br>
PGP Key ID: 0xCA67C5A6<br>
PGP Key Fingerprint = BF59FF006360B6E8D48F26B10D9F5A84CA67C5A6<br>
<br>
**<br>
ATIX Informationstechnologie und Consulting AG<br>
Einsteinstr. 10<br>
85716 Unterschleissheim<br>
Deutschland/Germany<br>
<br>
Phone: +49-89 452 3538-0<br>
Fax:   +49-89 990 1766-0<br>
<br>
Registergericht: Amtsgericht Muenchen<br>
Registernummer: HRB 168930<br>
USt.-Id.: DE209485962<br>
<br>
Vorstand:<br>
Marc Grimme, Mark Hlawatschek, Thomas Merz (Vors.)<br>
<br>
Vorsitzender des Aufsichtsrats:<br>
Dr. Martin Buss<br>
<br>--<br>
Linux-cluster mailing list<br>
<a href="mailto:Linux-cluster@redhat.com">Linux-cluster@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/linux-cluster" target="_blank">https://www.redhat.com/mailman/listinfo/linux-cluster</a><br></blockquote></div><br><br clear="all"><br>-- <br>Dave Costakos<br>mailto:<a href="mailto:david.costakos@gmail.com">david.costakos@gmail.com</a><br>

</div>