-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: manual
-
Labels:None
Description
Transaction and all its glory
Scope of changes:
Conceptual page:
- Transaction are only allowed in featureCompatibilityVersion 4.0 from duplicate ticket
DOCS-11600 - Storage Engine – only WiredTiger (
DOCS-11802)
New helpers and operations that support transactions
- shell API
DOCS-11540 - commands
DOCS-11562 - reads and writes to the config, admin, and local databases within transactions (
DOCS-11692) - retryable writes (
DOCS-11750) - operations and txn state:
DOCS-11658– note, may need to reopen per comment on code review - for count, use $count agg (
DOCS-11757) - currentOps (
DOCS-11564)
Catalog operations before txns
- Run with w: majority (
DOCS-11758)
Security for transactions
- blurb that you need privileges for specific operations in the transactions
Additional notes for operations that accept snapshots.
- Restrictions & Errors:
- count only via aggregation stages
- Time Limit + Size Limit (
DOCS-11599) - Unsupported transaction Options
DOCS-11619 - system.* collections
DOCS-11604
- Abort operations and audit
DOCS-11518
Update existing pages.
- need to update for txn – agg $out stage is not allowed
- /core/write-operations-atomicity
- /tutorial/model-data-for-atomic-operations
- replica sets
- Update operations that can be in transactions, including cursor.readConcern:
DOCS-11637 - getMore – scope – if started inside, then just inside, if outside, cannot call inside.
DOCS-11425
- https://docs.mongodb.com/manual/reference/sql-comparison/
- https://docs.mongodb.com/manual/faq/fundamentals/#does-mongodb-support-transactions
- https://docs.mongodb.com/manual/faq/concurrency/#does-mongodb-support-transactions
- /core/data-modeling-introduction/
- core/read-isolation-consistency-recency/
- /core/data-model-operations
- other data modeling pages
- /faq/concurrency (What isolation guarantees ... / Can reads see changes ...)
- core/replica-set-rollbacks
read concern
- Initial doc of snapshot
DOCS-11245 - upconvert to snapshot
DOCS-11605 - speculative read concern
DOCS-11696/SERVER-34195(on Hold, seeSERVER-34945)
read preference - DOCS-11618
write concern
- speculative read concern
DOCS-11696/SERVER-34195(on Hold, see)SERVER-34945
locks
- lock acquisition
DOCS-11716 - Abort txns release locks
Remove existing pages
- /tutorial/perform-two-phase-commits
Drivers
Need examples for drivers section in the txn concept page (DRIVERS-488)
etc. Will continue scoping when doing txn ticket.
- is duplicated by
-
DOCS-11600 Docs for SERVER-33240: Gate use of transactions on FCV 4.0
- Closed
- is related to
-
DOCS-11425 Update getMore for Transactions (SERVER-33367)
- Closed
-
DOCS-11493 Document which errors abort transactions
- Closed
- related to
-
DOCS-11245 Docs for SERVER-32517: Parse readConcern snapshot and atClusterTime
- Closed
-
DOCS-11518 Document that writes in transactions that get aborted still get audited
- Closed
-
DOCS-11562 Docs for SERVER-33774: Make commitTransaction and abortTransaction commands adminOnly
- Closed
-
DOCS-11564 Docs for SERVER-33294: Report stashed in-use locks in currentOp
- Closed
-
DOCS-11599 Docs for SERVER-33295: Kill long-running snapshot transactions
- Closed
-
DOCS-11604 Docs for SERVER-34157: Prevent writes to system collections from within transactions
- Closed
-
DOCS-11605 Docs for SERVER-34073: Allow creating transactions with readconcerns other than 'snapshot', upconvert to 'snapshot'
- Closed
-
DOCS-11618 Docs for SERVER-33580: Restrict multi-statement transactions to primaries
- Closed
-
DOCS-11619 Docs for SERVER-33412: Error on writes with unsupported transaction options
- Closed
-
DOCS-11637 Update operations that support readConcern snapshot/txns
- Closed
-
DOCS-11658 Document that certain commands do not affect transaction state
- Closed
-
DOCS-11690 Docs for SERVER-34880: Make readConcern:local wait for write concern on a read-only transaction
- Closed
-
DOCS-11716 Docs for SERVER-33244: Make all lock acquisitions for transactions have 0 second timeout
- Closed
-
DOCS-11750 Docs: transactions - retryable
- Closed
-
DOCS-11757 Docs for SERVER-35257: Forbid count command in transactions
- Closed
-
DOCS-11758 Docs for SERVER-34991: JS tests doing transaction operations must use majority writeConcern for drops
- Closed
-
DOCS-11802 Docs for SERVER-35513: Forbid transactions on inMemory storage engine
- Closed