MongoDB での 2 フェーズ コミットの実行に関するこの記事を参照してください。
トランザクションの「初期」状態の目的は何ですか? 「保留」状態のトランザクション ドキュメントを挿入して、データベースへの往復を保存しないのはなぜですか?
記事の後半で説明するように、同じトランザクションを実行しているアプリケーションが複数ある場合、「初期」状態は基本的に論理ロックが解放されていることを意味するため、findAndModify() はドキュメントを更新してそのロックを取得できます。したがって、トランザクションを実行できるアプリケーションは 1 つだけです。