]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
RADOS: fix write op hangs 11143/head
authorYunchuan Wen <yunchuan.wen@kylin-cloud.com>
Tue, 20 Sep 2016 03:54:56 +0000 (11:54 +0800)
committerYunchuan Wen <yunchuan.wen@kylin-cloud.com>
Tue, 20 Sep 2016 04:46:28 +0000 (12:46 +0800)
commitd80784e5dffa5f0d5e725a4adf4ff26df215415d
treea7691d3d3e1744e8815b5ca8f687ba73cf20246c
parentb02203627863af8f8d434a19d0598492a5ceb2ed
RADOS: fix write op hangs

if primary OSD handle a write op and do_osd_ops return errro code,
record_write_error will try to record it into pglog and send log message
to replica.
but if replica OSD crash right now, the primary OSD will call
on_change to free all repop, and do_update_log_missing_reply will not
be called, so the write op will lost and hangs.

this patch fix it.

Signed-off-by: Yunchuan Wen <yunchuan.wen@kylin-cloud.com>
src/osd/ReplicatedPG.cc
src/osd/ReplicatedPG.h