Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

jewel: rgw: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection #10661

Merged
merged 1 commit into from Feb 1, 2017

Conversation

ghost
Copy link

@ghost ghost commented Aug 10, 2016

@ghost ghost self-assigned this Aug 10, 2016
@ghost ghost added this to the jewel milestone Aug 10, 2016
@ghost ghost added bug-fix rgw labels Aug 10, 2016
ghost pushed a commit that referenced this pull request Aug 12, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 16, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 17, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 22, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 22, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 23, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 24, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 24, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 24, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
ghost pushed a commit that referenced this pull request Aug 24, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
@ghost ghost changed the title jewel: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection DNM: jewel: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection Aug 24, 2016
@ghost
Copy link
Author

ghost commented Aug 24, 2016

http://gitbuilder.sepia.ceph.com/gitbuilder-ceph-rpm-centos7-amd64-basic/log.cgi?log=0709e5e3afda45ef3c9cbff32a9f21c2139ffecd

 CXX rgw/librgw_la-rgw_env.lo
CXX rgw/librgw_la-rgw_fcgi.lo
CXX rgw/librgw_la-rgw_formats.lo
rgw/rgw_bucket.cc: In function 'int rgw_remove_bucket_bypass_gc(RGWRados*, rgw_bucket&, int, bool)':
    error: rgw/rgw_bucket.cc:747:12: 'class RGWRados' has no member named 'get_bucket_instance_entry' 
store->get_bucket_instance_entry(bucket, entry);
^
make[3]: *** [rgw/librgw_la-rgw_bucket.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory `/srv/autobuild-ceph/gitbuilder.git/build/rpmbuild/BUILD/ceph-10.2.2/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/srv/autobuild-ceph/gitbuilder.git/build/rpmbuild/BUILD/ceph-10.2.2/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/srv/autobuild-ceph/gitbuilder.git/build/rpmbuild/BUILD/ceph-10.2.2/src'
    make: *** [all-recursive] Error 1 
    error: Bad exit status from /var/tmp/rpm-tmp.vZoIBo (%build) 

@mattbenjamin
Copy link
Contributor

mattbenjamin commented Sep 29, 2016

@dachary just need:

[mbenjamin@lemon ceph-jewel]$ git diff -p src/rgw/rgw_bucket.cc
diff --git a/src/rgw/rgw_bucket.cc b/src/rgw/rgw_bucket.cc
index b6fdc30..c7c5239 100644
--- a/src/rgw/rgw_bucket.cc
+++ b/src/rgw/rgw_bucket.cc
@@ -743,8 +743,7 @@ int rgw_remove_bucket_bypass_gc(RGWRados *store, rgw_bucket& bucket,

   if (!store->is_syncing_bucket_meta(bucket)) {
     RGWObjVersionTracker objv_tracker;
-    string entry;
-    store->get_bucket_instance_entry(bucket, entry);
+    string entry = bucket.get_key();
     ret = rgw_bucket_instance_remove_entry(store, entry, &objv_tracker);
     if (ret < 0) {
       lderr(store->ctx()) << "ERROR: could not remove bucket instance entry" << bucket.name << "with ret as " << ret << dendl;

This follows from the effect of:

commit 6225a6d45b8e76f9afaa741fa61d4b9742ef60fb
Author: Casey Bodley <cbodley@redhat.com>
Date:   Tue Jul 5 09:00:19 2016 -0400

    rgw: use tenant/ for bucket instance metadata keys

@ghost
Copy link
Author

ghost commented Oct 4, 2016

thanks, will use that :-)

@ghost ghost changed the base branch from jewel to jewel-next November 9, 2016 09:59
@ghost
Copy link
Author

ghost commented Nov 9, 2016

rebased

object deletions async.

Fixes: http://tracker.ceph.com/issues/15557
Signed-off-by: Pavan Rallabhandi <PRallabhandi@walmartlabs.com>
(cherry picked from commit b7a69fc)

Conflicts:
        src/rgw/rgw_bucket.cc: as recommended by mattbenjamin

--- a/src/rgw/rgw_bucket.cc
+++ b/src/rgw/rgw_bucket.cc
@@ -743,8 +743,7 @@ int rgw_remove_bucket_bypass_gc(RGWRados *store, rgw_bucket& bucket,

   if (!store->is_syncing_bucket_meta(bucket)) {
     RGWObjVersionTracker objv_tracker;
-    string entry;
-    store->get_bucket_instance_entry(bucket, entry);
+    string entry = bucket.get_key();
     ret = rgw_bucket_instance_remove_entry(store, entry, &objv_tracker);
     if (ret < 0) {
       lderr(store->ctx()) << "ERROR: could not remove bucket instance entry" << bucket.name << "with ret as " << ret << dendl;
@ghost
Copy link
Author

ghost commented Nov 9, 2016

applied the patch suggested at #10661 (comment)

@ghost
Copy link
Author

ghost commented Nov 14, 2016

jenkins test this please (general jenkins failure)

@ghost ghost changed the title DNM: jewel: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection jewel: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection Dec 5, 2016
ghost pushed a commit that referenced this pull request Dec 5, 2016
… radosgw-admin to bypass garbage collection

Reviewed-by: Loic Dachary <ldachary@redhat.com>
@ghost ghost changed the base branch from jewel-next to jewel December 21, 2016 23:33
@ghost
Copy link
Author

ghost commented Dec 21, 2016

check this please

@smithfarm smithfarm changed the title jewel: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection jewel: rgw: Have a flavor of bucket deletion in radosgw-admin to bypass garbage collection Feb 1, 2017
@smithfarm
Copy link
Contributor

@smithfarm smithfarm merged commit 5821e8d into ceph:jewel Feb 1, 2017
@smithfarm
Copy link
Contributor

(11:46:45 AM) smithfarm: owasserm: thanks. For jewel integration rgw, then, what it comes down to is verifying that these 6 valgrind failures are all libtcmalloc-related: http://pulpito.front.sepia.ceph.com/smithfarm-2017-01-31_12:35:14-rgw-wip-jewel-backports-distro-basic-smithi/
(11:46:58 AM) smithfarm: owasserm: I will do that now
(11:47:05 AM) owasserm: smithfarm, thanks
(11:47:33 AM) smithfarm: owasserm: and assuming they are tcmalloc related, you said I can directly merge all the rgw PRs? Or do you want me to ask you for review in the PRs first?
(11:47:53 AM) owasserm: smithfarm, yes you can merge them
(11:48:19 AM) smithfarm: ok, will merge and do at least one or two more rgw runs before passing 10.2.6 to QE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants