Removal hints are created for the head object (of 0 bytes) correctly. The expiry process is unaware of the relationship between the head object and the segments. Likewise no removal hit is created for the
swift segments. I’m awaiting a blessing to file this as a bug, would any capable reader of this be willing to file it as a bug, please? peter
From: ceph-users <ceph-users-bounces@xxxxxxxxxxxxxx> on behalf of Peter Eisch <peter.eisch@xxxxxxxxxxxxxxx> I’ve verified this is still broken on Nautilus (14.2.4). The code for deleting a swift object split into segments is correct. I’m now trying to follow the object expirer code. It seems it reads the metadata
for the lead object (0-bytes in length) and expires that correctly but never understands to look for its associated segments in the metadata. It could be because these are stored in a different bucket – I’m not sure. Once the lead object is deleted, the
metadata is removed and all the segments are then orphaned. Is anyone here familiar with the RGWObjectExpirer code who I could confer?
peter
From: ceph-users <ceph-users-bounces@xxxxxxxxxxxxxx> on behalf of Peter Eisch <peter.eisch@xxxxxxxxxxxxxxx> I should have noted this is with Luminous 12.2.12 and consistent with swiftclient versions from 3.0.0 to 3.8.1, which may not be relevant. With a proper nod I can open a ticket for this – just want to make
sure it’s not a config issue. [client.rgw.cephrgw-s01] host = cephrgw-s01 keyring = /etc/ceph/ceph.client.rgw.cephrgw-s01 rgw_zone = <redacted> rgw zonegroup = us rgw realm = <redacted> rgw dns name = rgw-s00.<redacted> rgw dynamic resharding = false rgw swift account in url = ""> rgw swift url = ""> rgw keystone make new tenants = true rgw keystone implicit tenants = true rgw enable usage log = true rgw keystone accepted roles = _member_,admin rgw keystone admin domain = Default rgw keystone admin password = <redacted> rgw keystone admin project = admin rgw keystone admin user = admin rgw keystone api version = 3 rgw keystone url = ""> rgw relaxed s3 bucket names = true rgw s3 auth use keystone = true rgw thread pool size = 4096 rgw keystone revocation interval = 300 rgw keystone token cache size = 10000 rgw swift versioning enabled = true rgw log nonexistent bucket = true All tips accepted… peter
From: ceph-users <ceph-users-bounces@xxxxxxxxxxxxxx> on behalf of Peter Eisch <peter.eisch@xxxxxxxxxxxxxxx> Hi, When uploading to RGW via swift I can set an expiration time. The files being uploaded are large. We segment them using the swift upload ‘-S’ arg. This results in a 0-byte file in the bucket and all the
data frags landing in a *_segments bucket. When the expiration passes the 0-byte file is delete but all the segments remain. Am I misconfigured or is this a bug where it won’t expire the actual data? Shouldn’t RGW set the expiration on the uploaded
segments too if they’re managed separately? Thanks, peter |
_______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com