Hi,
You have mentioned two issues when balance and fi show running
concurrently
- stalling and
- errors.
first of all..
3.17 replaced our own system wide disk scan methods by lblkid scan
methods. lblkid with its feature-rich is slower as reported here.
https://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg37839.html
Next, as of 3.17 it still miss the poor man's optimizations patches
(without seeking for a new kernel interface)
[PATCH 1/1] btrfs-progs: code optimize cmd_scan_dev() use
btrfs_register_one_device()
[PATCH 1/2] btrfs-progs: introduce btrfs_register_all_device()
[PATCH 2/2] btrfs-progs: optimize btrfs_scan_lblkid() for multiple calls
If you could, pls..
Now on 3.17 apply above 3 patches and see if you see any better
performance for the stalling issue.
can you do same steps on 3.16 and report what you observe
Now about the 2nd issue errors when balance is running.. here is my
initial analysis with some guess work..
> just before the version information. During that time, it
> often prints something like
> parent transid verify failed on 2636556500992 wanted 2264 found 2268
or
> Check tree block failed, want=2730665181184, have=9727841172931608576
The default btrfs fi show will scan kernel for mounted FS first and
then for umounted btrfs disks.
When we already know about the mounted disks its just unnecessary that
we would still read the mounted disks and later drop them as seen,
looks like we need to write a real fix to replace this workaround fix..
btrfs filesystem show: skip duplicate fsids
-Anand
On 10/22/14 05:28, Petr Janecek wrote:
Hello,
the version 3.17 of btrfs-progs has been released.
on a system with 3-disk raid1 and 4 and 5-disk raid10 fs,
"btrfs filesystem show" now stalls for approx. half a minute after the
listing, just before the version information. During that time, it
often prints something like
[...]
devid 4 size 2.73TiB used 806.01GiB path /dev/sdh
devid 5 size 3.64TiB used 123.00GiB path /dev/sdp
parent transid verify failed on 2636556500992 wanted 2264 found 2268
parent transid verify failed on 2636556500992 wanted 2264 found 2268
parent transid verify failed on 2636556500992 wanted 2264 found 2268
parent transid verify failed on 2636556500992 wanted 2264 found 2268
Ignoring transid failure
extent buffer leak: start 2636556091392 len 16384
Btrfs v3.17
I've had a balance running that time, but "btrfs fi sh /any/btrfs/mount"
returned always quickly as in previous versions.
Now, with the balance paused, the stalls continue to appear, but no
messages as above. During the stalls, btrfs is reading the disks at rate
several MB/s, probably seek limited. /proc/<btrfs fi sh pid>/fd shows
that it scans again the devices it has already written about.
Umounted all the btrfs, checked them -- nothing wrong.
Resumed the balance -- error messages are (sometimes) back:
[...]
Label: 'BTR3' uuid: 0bf93650-fd12-4f82-8086-2c7484141e97
Total devices 5 FS bytes used 1.63TiB
devid 1 size 2.73TiB used 800.00GiB path /dev/sde
devid 2 size 2.73TiB used 800.00GiB path /dev/sdf
devid 3 size 2.73TiB used 800.03GiB path /dev/sdg
devid 4 size 2.73TiB used 801.00GiB path /dev/sdh
devid 5 size 3.64TiB used 143.03GiB path /dev/sdp
Check tree block failed, want=2730665181184, have=9727841172931608576
Check tree block failed, want=2730665181184, have=9727841172931608576
Check tree block failed, want=2730665181184, have=8388343671073157408
Check tree block failed, want=2730665181184, have=9727841172931608576
Check tree block failed, want=2730665181184, have=9727841172931608576
read block failed check_tree_block
Label: 'BTR1' uuid: 2ec4b5a1-a2c4-4687-9015-cf5b519297f3
Total devices 3 FS bytes used 2.47TiB
devid 1 size 3.64TiB used 1.79TiB path /dev/sdm
devid 2 size 3.64TiB used 1.79TiB path /dev/sdn
devid 3 size 3.64TiB used 1.79TiB path /dev/sdo
Btrfs v3.17
(or the "parent transid verify failed..." + "extent buffer leak..." as
in the first case as well)
Kernel version 3.18-rc1
Regards,
Petr
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html