[SERVER-36769] Do not hold collection cloner mutex while inserting documents into storage Created: 20/Aug/18 Updated: 06/Dec/22 Resolved: 05/Sep/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Tess Avitabile (Inactive) | Assignee: | Backlog - Replication Team |
| Resolution: | Won't Fix | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Assigned Teams: |
Replication
|
| Participants: |
| Description |
|
We hold the collection cloner mutex while inserting documents into storage. Since we also hold this mutex while populating the _documentsToInsert buffer, this prevents us from simultaneously inserting into the buffer and inserting into storage. We should avoid holding this mutex while inserting into storage. This would require us to have throttling for _documentsToInsert so that its size does not grow without bound. |
| Comments |
| Comment by Tess Avitabile (Inactive) [ 05/Sep/18 ] |
|
The solution is to parallelize insertion on the destination, which we will schedule as a separate project. |