[SERVER-3458] Long-running getlasterror processes build on themselves and hog CPU Created: 21/Jul/11 Updated: 10/Dec/14 Resolved: 07/Mar/14 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Kristina Chodorow (Inactive) | Assignee: | Unassigned |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Participants: | |||||
| Description |
|
If getlasterror has an unfulfillable w, it will basically spinlock until wtimeout runs out. The problem is, this can cause a backlog of getlasterror commands, all spinlocking, which can hog all of the CPU. Perhaps getlasterror should use an exponential backoff to determine sleep time? |
| Comments |
| Comment by Eric Milkie [ 07/Mar/14 ] |
|
GLE no longer spins while waiting. |