[SERVER-12530] KillCursor on an agg cursor leaves child cursor orphaned Created: 29/Jan/14  Updated: 11/Jul/16  Resolved: 12/Feb/14

Status: Closed
Project: Core Server
Component/s: Aggregation Framework, Stability
Affects Version/s: 2.5.5
Fix Version/s: 2.6.0-rc0

Type: Bug Priority: Major - P3
Reporter: Mathias Stearn Assignee: Mathias Stearn
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File server12530.py    
Issue Links:
Related
is related to SERVER-12392 Move cursor/runner cache into Collect... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Participants:

 Description   

Introduced by SERVER-12392



 Comments   
Comment by Githook User [ 12/Feb/14 ]

Author:

{u'username': u'RedBeard0531', u'name': u'Mathias Stearn', u'email': u'mathias@10gen.com'}

Message: SERVER-12530 Remove unneeded uassert in agg cursor explain

We no longer require the collection to exist to explain the stage.
Branch: master
https://github.com/mongodb/mongo/commit/a0b316429eeb4159f6f39c44ad155e611faefc7b

Comment by Githook User [ 12/Feb/14 ]

Author:

{u'username': u'RedBeard0531', u'name': u'Mathias Stearn', u'email': u'mathias@10gen.com'}

Message: SERVER-12530 Make DocumentSourceCursor use Runner directly

Now that the input Runner no longer is wrapped in a ClientCursor, the
PipelineRunner is responsible for propagating kill and invalidate methods.
Branch: master
https://github.com/mongodb/mongo/commit/6244c5e5ef1a285ea0a6a28a411caa41a2691197

Comment by Githook User [ 12/Feb/14 ]

Author:

{u'username': u'RedBeard0531', u'name': u'Mathias Stearn', u'email': u'mathias@10gen.com'}

Message: SERVER-12530 clean up agg output cursor creation and locking
Branch: master
https://github.com/mongodb/mongo/commit/20806b5757b5bf4dbf524df0f332170012086af7

Comment by Githook User [ 30/Jan/14 ]

Author:

{u'username': u'RedBeard0531', u'name': u'Mathias Stearn', u'email': u'mathias@10gen.com'}

Message: SERVER-12530 Don't set NoTimeout flag on input cursor to agg

This is a short-term fix for SERVER-12530. It ensures that the cursors leaked
when killing an aggregation cursor are eventually cleaned up.
Branch: master
https://github.com/mongodb/mongo/commit/707fe683a31754c0bcbdd8abca0029815b96fce1

Comment by Githook User [ 30/Jan/14 ]

Author:

{u'username': u'RedBeard0531', u'name': u'Mathias Stearn', u'email': u'mathias@10gen.com'}

Message: SERVER-12530 Don't set NoTimeout flag on input cursor to agg

This is a short-term fix for SERVER-12530. It ensures that the cursors leaked
when killing an aggregation cursor are eventually cleaned up.
Branch: master
https://github.com/mongodb/mongo/commit/707fe683a31754c0bcbdd8abca0029815b96fce1

Comment by Mathias Stearn [ 30/Jan/14 ]

Updating test to wait 10 minutes for child cursor to be killed

Comment by Mathias Stearn [ 29/Jan/14 ]

Attaching python script that tests this. Can't be done in a jstest today since we can neither force the killing of cursors nor get the id of a cursor.

Generated at Thu Feb 08 03:28:47 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.