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

remove write lock from _migrateStartCloneTransaction #1041

Closed
leifwalsh opened this issue Mar 30, 2014 · 1 comment
Closed

remove write lock from _migrateStartCloneTransaction #1041

leifwalsh opened this issue Mar 30, 2014 · 1 comment
Assignees
Milestone

Comments

@leifwalsh
Copy link
Contributor

Currently, the beginning of a migration takes a write lock to start the migration. If there is a long running read operation, that can introduce a very bad stall. Instead of this, we'll use a range lock in the lock tree over the chunk. This introduces the invariant that clients must take row locks before running the oplogging code (which is currently where we log into the migratelog too), so that this lock will be a valid way to make sure nobody's writing to the chunk while we're initializing the migratelog.

@leifwalsh leifwalsh added this to the 1.4.2 milestone Mar 30, 2014
@leifwalsh leifwalsh self-assigned this Mar 30, 2014
@tmcallaghan tmcallaghan modified the milestones: 1.5.0, 1.4.2 Apr 21, 2014
@tmcallaghan tmcallaghan modified the milestones: Future Features, 1.5.0 May 1, 2014
@leifwalsh leifwalsh modified the milestones: 1.5.0, Future Features May 1, 2014
@leifwalsh
Copy link
Contributor Author

Consider using locktree locks instead, need to have a pow-wow with @zkasheff

@leifwalsh leifwalsh changed the title consider use of writelocktry for _migrateStartCloneTransaction and other write locks remove write lock from _migrateStartCloneTransaction May 15, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants