Skip to content
This repository has been archived by the owner on Feb 8, 2024. It is now read-only.

rgw_sal_motr: [CORTX-32697] support user remove with purge data #430

Merged
merged 1 commit into from
Sep 14, 2022

Conversation

sumedhak27
Copy link

@sumedhak27 sumedhak27 commented Sep 13, 2022

Problem:
During the Remove User code flow till the DeleteOp is instantiated for each obj from a bucket, we don't have the access to req_state ptr via RGWObjectCtx. This causes the addb.set_id(rctx) to fail, as it tries to access the req_id from null req_state ptr.

Solution:
To avoid the above situation, guarded the addb.set_id() call by checking if we have the req_state ptr accessible.
If inaccessible then generate the new req_id for each delete req.

Signed-off-by: Sumedh Anantrao Kulkarni sumedh.a.kulkarni@seagate.com

Checklist

  • Tracker (select at least one)
    • References tracker ticket
    • Very recent bug; references commit where it was introduced
    • New feature (ticket optional)
    • Doc update (no ticket needed)
    • Code cleanup (no ticket needed)
  • Component impact
    • Affects Dashboard, opened tracker ticket
    • Affects Orchestrator, opened tracker ticket
    • No impact that needs to be tracked
  • Documentation (select at least one)
    • Updates relevant documentation
    • No doc update is appropriate
  • Tests (select at least one)
Show available Jenkins commands
  • jenkins retest this please
  • jenkins test classic perf
  • jenkins test crimson perf
  • jenkins test signed
  • jenkins test make check
  • jenkins test make check arm64
  • jenkins test submodules
  • jenkins test dashboard
  • jenkins test dashboard cephadm
  • jenkins test api
  • jenkins test docs
  • jenkins render docs
  • jenkins test ceph-volume all
  • jenkins test ceph-volume tox

Problem: During Remove User code-flow till the DeleteOp is instantiated for
  each obj from a bucket, we don't have the access to req_state ptr
  via RGWObjectCtx. This causes the addb.set_id(rctx) to fail, as it
  tries to access the req_id from null req_state ptr.
Solution: To avoid the situation, guarded the addb.set_id() call by checking
  if we have the req_state ptr accesible and generated the unique req_id
  per delete obj request.

Signed-off-by: Sumedh Anantrao Kulkarni <sumedh.a.kulkarni@seagate.com>
@sumedhak27 sumedhak27 force-pushed the motr/user_rm/purge_delete branch from cbfa323 to 6a19f5a Compare September 13, 2022 11:45
Copy link

@sachinpunadikar sachinpunadikar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@sachinpunadikar sachinpunadikar merged commit 8f45d92 into Seagate:main Sep 14, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants