[SERVER-23066] killOp should accept negative opid Created: 10/Mar/16 Updated: 21/Nov/16 Resolved: 11/Mar/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Internal Code, Usability |
| Affects Version/s: | 3.2.4 |
| Fix Version/s: | 3.2.5, 3.3.3 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Geert Bosch | Assignee: | Geert Bosch |
| Resolution: | Done | Votes: | 0 |
| Labels: | code-only | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Operating System: | ALL | ||||||||||||
| Backport Completed: | |||||||||||||
| Steps To Reproduce: |
and start a shell and do :
there and in another shell get the opid and kill it. |
||||||||||||
| Sprint: | Integration 11 (03/14/16) | ||||||||||||
| Participants: | |||||||||||||
| Case: | (copied to CRM) | ||||||||||||
| Description |
|
As opid is a 32-bit unsigned type internally, but is reported by currentOp as 32-bit signed type, values exceeding 2,147,483,647 are reported as negative numbers. These numbers result in uassert 26823, "invalid op", requiring users to add 2**32 themselves (using the double or NumberLong type) for killing operations. Instead accept negative opids, and do the addition in killOp. |
| Comments |
| Comment by Githook User [ 29/Mar/16 ] |
|
Author: {u'username': u'GeertBosch', u'name': u'Geert Bosch', u'email': u'geert@mongodb.com'}Message: (cherry picked from commit cbb3a09da470edae68fca624cca880582491a782) |
| Comment by Githook User [ 11/Mar/16 ] |
|
Author: {u'username': u'GeertBosch', u'name': u'Geert Bosch', u'email': u'geert@mongodb.com'}Message: |
| Comment by Geert Bosch [ 10/Mar/16 ] |
|
While this issue is related, SERVER-8567 is about it being desirable to not show negative opIds, while this ticket is about killOp not being able to kill using that same negative opId. |