From patchwork Wed Aug 20 17:25:12 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yehuda Sadeh X-Patchwork-Id: 4752881 Return-Path: X-Original-To: patchwork-ceph-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 837359F344 for ; Wed, 20 Aug 2014 17:25:27 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 849E220160 for ; Wed, 20 Aug 2014 17:25:26 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 536922015E for ; Wed, 20 Aug 2014 17:25:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751540AbaHTRZO (ORCPT ); Wed, 20 Aug 2014 13:25:14 -0400 Received: from mail-ie0-f181.google.com ([209.85.223.181]:37272 "EHLO mail-ie0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751467AbaHTRZN (ORCPT ); Wed, 20 Aug 2014 13:25:13 -0400 Received: by mail-ie0-f181.google.com with SMTP id rp18so3240318iec.40 for ; Wed, 20 Aug 2014 10:25:13 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=OHOEGbE3mF5fLJ5votzZrEWUHSe33PMFuYoF6c4CS5o=; b=m3a+2BZZi6k/XBvyeux3tf6OFmyyZClpUVscbR5mLW6MpE6YXVogFs83/dghYA4nIe j6A14NYnCD0xVZQUSRCn5czKjNT6U5Z3Khy2PZjVNmt4kDy2IK4B1WpQ5pwu/GnOT+ty m5S9VFG17bN6afi/F/wbT/UtZEkzVFbu6Y3XFbwWWQpP3BmYFi0CA8PytT4cYQEAlwvA 3lGwuIUifnSFiUyjPaTRf4WdKwWso7hdRDa6QCV8TDwVekfZy1lst7TJ+7qxvho9Lqtc w6uzD8t8mZoQ09USpF08bBqLb6z3EHiMGs/YAryMIGc001sPOj/c7jssChjb6yI3m6yf 1hEg== X-Gm-Message-State: ALoCoQmshQobJZG3DA05bHABQkea6XoWVNjoD04HCmIfOXMaXV38dFZpGHMgsdNh/YZx7w6ouvYf MIME-Version: 1.0 X-Received: by 10.50.80.76 with SMTP id p12mr14430398igx.34.1408555512890; Wed, 20 Aug 2014 10:25:12 -0700 (PDT) Received: by 10.107.6.68 with HTTP; Wed, 20 Aug 2014 10:25:12 -0700 (PDT) In-Reply-To: References: Date: Wed, 20 Aug 2014 10:25:12 -0700 X-Google-Sender-Auth: VcZhNOMduglyXd23-dCQaQBwZFY Message-ID: Subject: Re: RadosGW crashing on copy for one specific object From: Yehuda Sadeh To: Sylvain Munaut Cc: "ceph-devel@vger.kernel.org" Sender: ceph-devel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: ceph-devel@vger.kernel.org X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On Wed, Aug 20, 2014 at 6:47 AM, Sylvain Munaut wrote: > Hi, > > >> What does 'radosgw-admin object stat --bucket= --object=' show? > > { "name": "5ae1b8cb8a2bdc3c2d7e1868b60d76abea2536f4604d6d312df95b719470fb3b\/render-image", > "size": 239879, > "policy": { "acl": { "acl_user_map": [ > { "user": "kp", > "acl": 15}], > "acl_group_map": [], > "grant_map": [ > { "id": "kp", > "grant": { "type": { "type": 0}, > "id": "kp", > "email": "", > "permission": { "flags": 15}, > "name": "KP S3 User", > "group": 0}}]}, > "owner": { "id": "kp", > "display_name": "KP S3 User"}}, > "etag": "bfe2df862d92f70cecbedbab324e3f78-1", > "tag": "default.440489.1590546", > "manifest": { "objs": [ > 0, > { "loc": { "bucket": { "name": "kp-render-image.bouygues", > "pool": ".rgw.kp-render-image", > "data_extra_pool": "", > "index_pool": ".rgw.kp-render-image", > "marker": "default.440489.58258", > "bucket_id": "default.440489.58258"}, > "key": "", > "ns": "multipart", > "object": > "_multipart_5ae1b8cb8a2bdc3c2d7e1868b60d76abea2536f4604d6d312df95b719470fb3b\/render-image.8rSDD8MVD1KIXDTQDsf3g6b71dqADP_.1"}, > "loc_ofs": 0, > "size": 239879}], > "obj_size": 239879, > "explicit_objs": "true", > "head_obj": { "bucket": { "name": "", > "pool": "", > "data_extra_pool": "", > "index_pool": "", > "marker": "", > "bucket_id": ""}, > "key": "", > "ns": "", > "object": ""}, > "head_size": 0, > "max_head_size": 0, > "prefix": "", > "tail_bucket": { "name": "", > "pool": "", > "data_extra_pool": "", > "index_pool": "", > "marker": "", > "bucket_id": ""}, > "rules": []}, > "attrs": { "user.rgw.content_type": "image\/png"}} > > >> Also, can you bump logging up? debug rgw = 20, debug ms = 1 > > I'll try, but being on the production cluster, it's constantly > hammered with requests :p > > The object has a zero sized head, which is ok, but I think it triggers an issue. Can you try this: Thanks, Yehuda --- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/src/rgw/rgw_dencoder.cc b/src/rgw/rgw_dencoder.cc index e6dc2ba..fd12c4f 100644 --- a/src/rgw/rgw_dencoder.cc +++ b/src/rgw/rgw_dencoder.cc @@ -104,7 +104,7 @@ void RGWObjManifest::obj_iterator::update_location() const rgw_obj& head = manifest->get_head(); - if (ofs < manifest->get_head_size()) { + if (ofs <= manifest->get_head_size()) { location = head; return; } diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index 7ca4a9d..877c130 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -558,7 +558,7 @@ void RGWObjManifest::obj_iterator::operator++() } /* are we still pointing at the head? */ - if (ofs < head_size) { + if (ofs <= head_size) { rule_iter = manifest->rules.begin(); RGWObjManifestRule *rule = &rule_iter->second; ofs = MIN(head_size, obj_size);