From: Liu Yuan <tailai.ly at taobao.com> if we go for a cached object, we don't care if it is busy or being recovered. Signed-off-by: Liu Yuan <tailai.ly at taobao.com> --- sheep/sdnet.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/sheep/sdnet.c b/sheep/sdnet.c index a28874e..1e001af 100644 --- a/sheep/sdnet.c +++ b/sheep/sdnet.c @@ -208,6 +208,15 @@ static int check_epoch(struct request *req) static int check_request(struct request *req) { + struct sd_obj_req *hdr = (struct sd_obj_req *)&req->rq; + + /* + * if we go for a cached object, we don't care if it is busy + * or being recovered. + */ + if ((hdr->flags & SD_FLAG_CMD_CACHE) && object_is_cached(hdr->oid)) + return 0; + if (!req->local_oid && !req->local_cow_oid) return 0; else { -- 1.7.8.2 |