In MongoDB 4.0, multi document transactions does not work with GridFS because:
- Transaction is represented in single oplog entry, must be within 16MB limit.
- Default transaction lifetime is only 60 seconds (big files could take a while to upload). Increasing this default is going to affect WT cache pressure.
GridFS with transaction would be a very special case (I don't know if there's any yet).
In PyMongo case, if a `ClientSession` is provided it will attempt to create an index for `fs.files` and `fs.chunks` collections grid_file.pyL196, currently creating an index in a transaction is prohibited in the server.
- depends on
-
DRIVERS-2062 Modify GridFS spec to support sessions, transactions and causal consistency
- Backlog
- is related to
-
JAVA-4887 GridFS doesn't support multi-document transactions
- Closed
-
PYTHON-1332 Implement Drivers Sessions API
- Closed
-
PYTHON-2244 Update documentation to promote GridFSBucket over GridFS
- Backlog
-
PYTHON-2243 Raise informative error message when attempting a GridFS operation in a transaction
- Closed
- related to
-
JAVA-4890 Multidocument transaction support in GridFS
- Blocked