- 
    Type:
Improvement
 - 
    Resolution: Fixed
 - 
    Priority:
Major - P3
 - 
    Affects Version/s: None
 - 
    Component/s: Aggregation Framework, Sharding
 - 
    None
 
- 
        Fully Compatible
 - 
        Query 2018-12-03, Query 2018-12-17, Query 2018-12-31
 - 
        None
 
- 
        None
 - 
        None
 - 
        None
 - 
        None
 - 
        None
 - 
        None
 
We banned aggregations within transactions on mongos as part of SERVER-33660, because doing so could potentially cause a deadlock. We should investigate how to perform a $mergeCursors against the same shard without inducing a deadlock. One idea is to avoid going over the network for a local cursor.
- depends on
 - 
                    
SERVER-37665 Add interface to check in and check out sessions
-         
 - Closed
 
 -         
 
- is depended on by
 - 
                    
SERVER-37619 Make $out writes retryable
-         
 - Backlog
 
 -         
 
- is duplicated by
 - 
                    
SERVER-34015 Remove uasserts in cluster_aggregate that avoid running snapshot aggregate merge on mongod
-         
 - Closed
 
 -         
 
- is related to
 - 
                    
SERVER-33660 Once getMores include lsid, sharded aggregations with $mergeCursors can hang
-         
 - Closed
 
 -         
 - 
                    
SERVER-33029 Support snapshot in cluster aggregate command
-         
 - Closed
 
 -         
 - 
                    
SERVER-33541 Add snapshot read support for aggregation
-         
 - Closed
 
 -         
 
- related to
 - 
                    
SERVER-37499 Potential deadlock when using exchange within a session
-         
 - Closed
 
 -         
 - 
                    
SERVER-64407 Add ResourceYielder support to ARS
-         
 - Closed
 
 -