Тема: ceph восстановление pg (4 errors, 0 fixed)

После того как вылетели два сервера из кластера появилась ошибка и она не исправляется стандартной командой, так как не совпадают размеры файлов.

#ceph pg repair 30.73
... 4 errors, 0 fixed

Смотрим где части

#ceph pg 30.73 query
...
              "up": [
                    10,
                    32,
                    34],
              "acting": [
                    10,
                    32,
                    34],
              "up_primary": 10,
              "acting_primary": 10},
...

лог

2014-11-10 03:14:42.531255 7f85e1fd2700  0 log [ERR] : repair 30.73 6ea2ff73/rbd_data.181da73fa7e526.00000000000009d2/head//30 on disk size (5332992) does not match object info size (8388608) ajusted for ondisk to (8388608)
2014-11-10 03:14:42.593672 7f85e1fd2700  0 log [ERR] : repair 30.73 349e3df3/rbd_data.155c3117ce703a.000000000000002f/head//30 on disk size (8290304) does not match object info size (8388608) ajusted for ondisk to (8388608)
2014-11-10 03:14:42.593723 7f85e1fd2700  0 log [ERR] : repair 30.73 2ff523f3/rbd_data.ee9cd130766eb.00000000000000b0/head//30 on disk size (1052672) does not match object info size (8388608) ajusted for ondisk to (8388608)
2014-11-10 03:14:42.593744 7f85e1fd2700  0 log [ERR] : repair 30.73 49f5c1f3/rbd_data.1564ba399a63da.00000000000001af/head//30 on disk size (6483968) does not match object info size (8388608) ajusted for ondisk to (8388608)
2014-11-10 03:14:42.593775 7f85e1fd2700  0 log [ERR] : 30.73 repair 4 errors, 0 fixed
2014-11-10 03:14:42.662761 7f85e1fd2700  0 log [ERR] : deep-scrub 30.73 6ea2ff73/rbd_data.181da73fa7e526.00000000000009d2/head//30 on disk size (5332992) does not match object info size (8388608) ajusted for ondisk to (8388608)
2014-11-10 03:14:42.723840 7f85e1fd2700  0 log [ERR] : deep-scrub 30.73 349e3df3/rbd_data.155c3117ce703a.000000000000002f/head//30 on disk size (8290304) does not match object info size (8388608) ajusted for ondisk to (8388608)
2014-11-10 03:14:42.723893 7f85e1fd2700  0 log [ERR] : deep-scrub 30.73 2ff523f3/rbd_data.ee9cd130766eb.00000000000000b0/head//30 on disk size (1052672) does not match object info size (8388608) ajusted for ondisk to (8388608)
2014-11-10 03:14:42.723916 7f85e1fd2700  0 log [ERR] : deep-scrub 30.73 49f5c1f3/rbd_data.1564ba399a63da.00000000000001af/head//30 on disk size (6483968) does not match object info size (8388608) ajusted for ondisk to (8388608)

Правим ручками, но надо обратить внимания что файлы называются немного не так

rbd_data.181da73fa7e526.00000000000009d2/head//30 - файл из лока
rbd\\udata.181da73fa7e526.00000000000009d2__head_6EA2FF73__1e - реальный файл
rbd_data.155c3117ce703a.000000000000002f/head//30 - файл из лока
rbd\\udata.155c3117ce703a.000000000000002f__head_349E3DF3__1e - реальный файл

правим тут /var/lib/ceph/osd/ceph-10/current/30.73_head

truncate -s 8388608 rbd\\udata.ee9cd130766eb.00000000000000b0__head_2FF523F3__1e 
truncate -s 8388608 rbd\\udata.1564ba399a63da.00000000000001af__head_49F5C1F3__1e 
truncate -s 8388608 rbd\\udata.181da73fa7e526.00000000000009d2__head_6EA2FF73__1e 
truncate -s 8388608 rbd\\udata.155c3117ce703a.000000000000002f__head_349E3DF3__1e 

запускаем опять

#ceph pg repair 30.73
2014-11-11 07:45:21.736978 7fdeeda0b700  0 log [INF] : 30.73 scrub ok