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

os/bluestore: simplify allocator release flow #12343

Merged
merged 7 commits into from Dec 16, 2016

Conversation

liewegas
Copy link
Member

@liewegas liewegas commented Dec 6, 2016

No need for the allocator to coordinate with the kv commit cycle. Instead,
make it hte caller's responsibility to not release extents until their dereference
has been committed.

@liewegas
Copy link
Member Author

liewegas commented Dec 6, 2016

@somnathr
Copy link

somnathr commented Dec 6, 2016

@liewegas Will take this patch and apply multi kv_sync on top..Will keep you posted on this..

@liewegas
Copy link
Member Author

liewegas commented Dec 6, 2016

rebased on latest master, which now includes the bitalloc dump

@chhabaramesh
Copy link
Contributor

@liewegas , looks good to me.

Copy link
Contributor

@varadakari varadakari left a comment

Choose a reason for hiding this comment

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

Looks good to me

@somnathr
Copy link

somnathr commented Dec 7, 2016

@liewegas I am seeing some degradation after porting my multi kv_sync changes on top of these commits + latest master. Not sure if it is because of the allocator changes or something else (because I was working on probably 3 weeks old master). Will revert these commits and see.

@chhabaramesh
Copy link
Contributor

@liewegas , I think we should remove TBD comment in BitMapAllocator.cc for making commiting logic concurrent:

  • TBD list:
    1. Make commiting and un commiting lists concurrent.
      */

Wait until after the kv transaction commits, and then
release extents directly into the usable pool.

This will let us remove the commit_{start,end} business.

Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
Don't rely on the Allocator to do this for us (that is
about to go away!).

Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
This mimics, roughly,

 open(..., O_WRONLY|O_CREAT, ...)
 seek(...)
 if (len > 0)
   write(...)

Signed-off-by: Sage Weil <sage@redhat.com>
@liewegas liewegas merged commit 3cf1ca5 into ceph:master Dec 16, 2016
@liewegas liewegas deleted the wip-bluestore-release branch December 16, 2016 23:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants