This is not transmission issue, but I think it is still it is worth mentioning here.
Environment:
- Debian unstable/experimental
- Transmission 1.76 (9395) (transmission-daemon)
- XFS filesystem on lvm
- "preallocation" : 1
Problem:
Systems shows terrible I/O performance when accessing downloaded files. I do not know if transmission was compiled with XFS support because it comes from Debian binary package. ldd shows that it's not because it is not linked against any xfs library (Am I right here ?)
ldd `which transmission-daemon`
linux-gate.so.1 => (0xb7820000)
libevent-1.4.so.2 => /usr/lib/libevent-1.4.so.2 (0xb7800000)
libcurl-gnutls.so.4 => /usr/lib/libcurl-gnutls.so.4 (0xb77c1000)
libz.so.1 => /usr/lib/libz.so.1 (0xb77ac000)
libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0xb764e000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7636000)
libc.so.6 => /lib/libc.so.6 (0xb74ef000)
libnsl.so.1 => /lib/libnsl.so.1 (0xb74d8000)
librt.so.1 => /lib/librt.so.1 (0xb74cf000)
libresolv.so.2 => /lib/libresolv.so.2 (0xb74b9000)
libidn.so.11 => /usr/lib/libidn.so.11 (0xb7488000)
liblber-2.4.so.2 => /usr/lib/liblber-2.4.so.2 (0xb747b000)
libldap_r-2.4.so.2 => /usr/lib/libldap_r-2.4.so.2 (0xb7437000)
libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb7409000)
libgnutls.so.26 => /usr/lib/libgnutls.so.26 (0xb736b000)
libgcrypt.so.11 => /usr/lib/libgcrypt.so.11 (0xb72f7000)
libdl.so.2 => /lib/libdl.so.2 (0xb72f3000)
/lib/ld-linux.so.2 (0xb7821000)
libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0xb72dc000)
libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb722a000)
libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb7206000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7203000)
libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb71fc000)
libkeyutils.so.1 => /lib/libkeyutils.so.1 (0xb71f9000)
libtasn1.so.3 => /usr/lib/libtasn1.so.3 (0xb71e9000)
libgpg-error.so.0 => /usr/lib/libgpg-error.so.0 (0xb71e4000)
Unlink syscall for ~4GB file lasts for couple of minutes ...
Code: Select all
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sdc 0,00 0,00 1,00 246,00 4,00 2624,00 21,28 0,97 3,94 3,92 96,80
Roughly the same happens when reading or copying the file. Copy from the same filesystem behaves normally i.e. 20x transfer speed and 1/20 of I/O operations.
Ideas:
- changing preallocation to 2 (not optimal)
- upgrading transmission to newer version (was this issue spotted before) ?
- make sure that transmission is build with XFS support
- talk to debian package maintainer
What do you think ?