読み取りコミットレベルが設定され、トランザクションでファントムの読み取りが行われた場合はどうなりますか。ロールバックして再実行するか、ロールバックするだけですか?コミットされたファントム読み取り(Spring)
1
A
答えて
1
いいえ、ロールバックするものはありません。あなたのコードは悪いデータを見て、おそらくそれに基づいて悪い決断をするでしょう、それだけです。
0
古いデータが表示されることがあります(2番目の読み取りでその行が更新された列でそのテーブルにある場合のみ)。あなたのデータを悪くするようなものから自分自身を救うために、楽観的なロックを使用してください。
2
私はコミットリードアイソレーションを理解していない限り(常に可能性があります)、コミットリードの全ポイントは、他のトランザクションによって変更された行がコミットされずに後でロールされたバック。したがって、Committed Readアイソレーションを使用するアプリケーションレベルでは、アプリケーションはファントムを見ることができません。
DBMSは内部でDBMSに依存します。 MVCCシステムでは、トランザクションはトランザクションが開始された時点でコミットされたバージョンを読み取るだけです。ロッキングシステムでは、他のトランザクションのロックを打つかもしれないし、あなた自身がスキップまたはブロックする可能性があります。しかし、AFAIKでは、DBMSは問題のためにトランザクションをロールバックしません。
関連する問題
- 1. 読み取りコミットされた分離レベルとテーブル制約とのトランザクション
- 2. Androidでコミットされていないトランザクションを読み取る
- 3. DB2でコミットされていない読み取り - 大文字と小文字が区別されますか?
- 4. 読み取りまたは
- 5. 読み取りコミットされた分離レベルの正確なコマンド定義は何ですか?
- 6. bashは読み取りループ内でネストされた読み取りをサポートしていますか?
- 7. Springブート統合テストで生成されたプロパティファイルを読み取る方法は?
- 8. ファントムはInnoDB、MyISAM、その他のエンジンを読み込みます
- 9. Postgresでファントムの読み込みを防ぐには?
- 10. バッファリングされたディスクからの読み取り
- 11. ネストされたJSONカントプロパティの読み取り
- 12. エンバードキュメント - 読み取り専用ネストされたデータ
- 13. MongoDBネストされたドキュメントからの読み取り
- 14. C++でリンクされたリストの読み取りアクセス違反
- 15. Symfony - YAMLから水和された読み取り専用エンティティ
- 16. 読み取りアップロードされたファイル名は、java
- 17. SocketTimeoutException:読み取りタイムアウトされたHTTPクライアント
- 18. フィルタリングされたログcat(Programmatically)を読み取りますか?
- 19. 例外がスローされました:読み取りアクセス違反
- 20. は、マッピングされたエンティティのプロパティは読み取り専用
- 21. S3ポリシー - パブリック書き込みのみ認証された読み取り
- 22. 読み取り
- 23. 読み取り
- 24. c3p0プールされた接続ファントム接続
- 25. 下位トランザクションデータとコミットされていないトランザクションデータの両方を読み取る
- 26. 同じトランザクションでコミットされていないデータを読み取る方法
- 27. エラーの取得 "保護されたメモリの読み取りまたは書き込みを試みました"
- 28. Springデータの残りの部分を既定でのみ読み取ります
- 29. プロパティファイルから読み取るSpring 3
- 30. Spring SFTPファイルロックを読み取る
「変更が他のトランザクションによって変更されたが、変更がコミットされずにロールバックされた」行が実際にはファントムリードではなく、ダーティリードになります。http://en.wikipedia.org/wiki/Isolation_(database_systems) ) –