https://tracker.ceph.com/https://tracker.ceph.com/favicon.ico2017-08-25T21:13:51ZCeph Ceph - Bug #21089: bluestore: mkfs fsck fails when size has 0x1000 bit set during early rcshttps://tracker.ceph.com/issues/21089?journal_id=977162017-08-25T21:13:51ZSage Weilsage@newdream.net
<ul><li><strong>Subject</strong> changed from <i>bluestore: mkfs fsck fails when size is not min-alloc-size aligned</i> to <i>bluestore: mkfs fsck fails when size has 0x1000 bit set during early rcs</i></li><li><strong>Description</strong> updated (<a title="View differences" href="/journals/97716/diff?detail_id=94640">diff</a>)</li></ul> Ceph - Bug #21089: bluestore: mkfs fsck fails when size has 0x1000 bit set during early rcshttps://tracker.ceph.com/issues/21089?journal_id=977232017-08-25T22:06:08ZSage Weilsage@newdream.net
<ul></ul><p>More specifically, there are two cases. In both cases, the size is off by one block.</p>
<p>1. freelistmanager's block count does not change, and we need to fix the single trailing bit for the size change<br />2. freelistmanager's block count does change (new row!), and we need allocate all bits after the new eof</p>
<p>These are tested with these two cases (10gb + 4k and 10g + 4k + 8k) by running v12.1.0 vstart:</p>
<pre>
bin/init-ceph stop ; MON=1 OSD=1 MDS=0 ../src/vstart.sh -n -x -l --bluestore -d -o 'bluestore block size = 10737430528' -o 'bluestore min alloc size = 65536' ; bin/init-ceph stop osd
bin/init-ceph stop ; MON=1 OSD=1 MDS=0 ../src/vstart.sh -n -x -l --bluestore -d -o 'bluestore block size = 10737422336' -o 'bluestore min alloc size = 65536' ; bin/init-ceph stop osd
</pre>
<p>and the fix is verified by running (master) ceph-objecstore-tool like so:</p>
<pre>
make ceph-objectstore-tool && rm -f c && CEPH_ARGS="--log-file c --debug-bluestore 30" bin/ceph-objectstore-tool --op fsck --data-path ~/src/ceph4/build/dev/osd0
grep -A4 -B3 'fsck warn' c
</pre>
<p>and confirming that the first run reports the error and fixes it, and the second run reports no warning at all.</p> Ceph - Bug #21089: bluestore: mkfs fsck fails when size has 0x1000 bit set during early rcshttps://tracker.ceph.com/issues/21089?journal_id=977582017-08-27T01:45:54Zxie xingguo258156334@qq.com
<ul><li><strong>Status</strong> changed from <i>12</i> to <i>Resolved</i></li></ul>