[SERVER-29802] Non-atomic applyOps command should not take out a global exclusive lock Created: 22/Jun/17 Updated: 30/Oct/23 Resolved: 07/Aug/17 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | 3.4.9, 3.5.12 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Steve Briskin (Inactive) | Assignee: | Benety Goh |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | todo_in_code | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Backport Completed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||
| Sprint: | Repl 2017-07-31, Repl 2017-08-21 | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||||||||||||||||||
| Description |
|
The applyOps command currently takes out a global exclusive lock and applies operations serially. This limits the number of operations that can be applied due to the lack of concurrency. Having applyOps (when in non-atomic mode) not take out a global lock would allow us to parallelize applyOps calls and take advantage of collection- and document-level locking. |
| Comments |
| Comment by Githook User [ 10/Aug/17 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com'}Message: This flag supports non-atomic application of CRUD operations if set to false. |
| Comment by Githook User [ 10/Aug/17 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com'}Message: |
| Comment by Githook User [ 09/Aug/17 ] |
|
Author: {'name': 'Benety Goh', 'username': 'benety', 'email': 'benety@mongodb.com'}Message: (cherry picked from commit 8671b6e7ea799312ece35cd90f8cf480d4f56ce8) |
| Comment by Githook User [ 09/Aug/17 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: (cherry picked from commit b519114cb9bc72c17c60761cad369f2d8e18f472) |
| Comment by Githook User [ 08/Aug/17 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: (cherry picked from commit c6f9f146b15b6f84613ee5f6b97572c6f9f5a1ba) |
| Comment by Githook User [ 08/Aug/17 ] |
|
Author: {'name': 'Benety Goh', 'username': 'benety', 'email': 'benety@mongodb.com'}Message: (cherry picked from commit 948776e76550e4ddf4a3d0f50b729f15bef0a97b) |
| Comment by Githook User [ 08/Aug/17 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: This flag supports non-atomic application of CRUD operations if set to false. (cherry picked from commit e7de30308564cead80857592ed27d938f73a91f1) |
| Comment by Githook User [ 08/Aug/17 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: |
| Comment by Githook User [ 07/Aug/17 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: |
| Comment by Githook User [ 07/Aug/17 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: |
| Comment by Benety Goh [ 05/Aug/17 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: |
| Comment by Githook User [ 05/Aug/17 ] |
|
Author: {'username': 'benety', 'email': 'benety@mongodb.com', 'name': 'Benety Goh'}Message: |
| Comment by Benety Goh [ 29/Jun/17 ] |
|
|