[linux-lvm] Snapshot behavior on classic LVM vs ThinLVM

Zdenek Kabelac zkabelac at redhat.com
Wed Apr 26 14:33:15 UTC 2017


Dne 26.4.2017 v 15:37 Gionatan Danti napsal(a):
> 
> On 26/04/2017 13:23, Zdenek Kabelac wrote:
>>
>> You need to use 'direct' write more - otherwise you are just witnessing
>> issues related with 'page-cache' flushing.
>>
>> Every update of file means update of journal - so you surely can lose
>> some data in-flight - but every good software needs to the flush before
>> doing next transaction - so with correctly working transaction software
>> no data could be lost.
> 
> I used "oflag=sync" for this very reason - to avoid async writes, However, 
> let's retry with "oflat=direct,sync".
> 
> This is the thinpool before filling:
> 
> [root at blackhole mnt]# lvs
>    LV       VG        Attr       LSize  Pool     Origin Data%  Meta% Move Log 
> Cpy%Sync Convert
>    thinpool vg_kvm    twi-aot---  1.00g                 87.66  12.01
>    thinvol  vg_kvm    Vwi-aot---  2.00g thinpool        43.83
>    root     vg_system -wi-ao---- 50.00g
>    swap     vg_system -wi-ao----  7.62g
> 
> [root at blackhole storage]# mount | grep thinvol
> /dev/mapper/vg_kvm-thinvol on /mnt/storage type ext4 
> (rw,relatime,seclabel,errors=remount-ro,stripe=32,data=ordered)
> 
> 
> Fill the thin volume (note that errors are raised immediately due to 
> --errorwhenfull=y):
> 
> [root at blackhole mnt]# dd if=/dev/zero of=/mnt/storage/test.2 bs=1M count=300 
> oflag=direct,sync
> dd: error writing ‘/mnt/storage/test.2’: Input/output error
> 127+0 records in
> 126+0 records out
> 132120576 bytes (132 MB) copied, 14.2165 s, 9.3 MB/s
> 
>  From syslog:
> 
> Apr 26 15:26:24 localhost lvm[897]: WARNING: Thin pool vg_kvm-thinpool-tpool 
> data is now 96.84% full.
> Apr 26 15:26:27 localhost kernel: device-mapper: thin: 253:4: reached low 
> water mark for data device: sending event.
> Apr 26 15:26:27 localhost kernel: device-mapper: thin: 253:4: switching pool 
> to out-of-data-space (error IO) mode
> Apr 26 15:26:34 localhost lvm[897]: WARNING: Thin pool vg_kvm-thinpool-tpool 
> data is now 100.00% full.
> 
> Despite write errors, the filesystem is not in read-only mode:


But you get correct 'write' error - so from application POV - you get failing
transaction update/write - so app knows  'data' were lost and should not 
proceed with next transaction - so it's in line with  'no data is lost' and 
filesystem is not damaged and is in correct state (mountable).


Zdenek




More information about the linux-lvm mailing list