[SERVER-35637] DDL operations blocked by transactions also block authentication Created: 16/Jun/18 Updated: 23/Jul/18 Resolved: 27/Jun/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Security |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Siyuan Zhou | Assignee: | Spencer Jackson |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Operating System: | ALL | ||||||||
| Participants: | |||||||||
| Description |
|
When DDL operations (e.g. dropDatabase) that require the global lock in X mode are blocked by inactive transactions. The DDL operations could block authentication because reading "user" collection needs the global lock in IS mode too. Transactions expire in 60 seconds by default, so authentication will be blocked for 60 seconds at most. Authentication is the first step to kill the running transactions or dropDatabase, so it might be usability problem. |