Transaction rolled back because it has been marked as rollback-only
出現這種錯誤的原因
1.接口A 調用了接口B
2.接口B報異常了,沒有在B裏面進行try catch捕獲
3.接口A對 接口B進行了try catch捕獲
因為接口B報異常 會把當前事物A接口的事物(如果B沒有開啟新的事物) 標誌成rollback-only
然後因為接口A對B進行了try catch 所以接口A會一直往下走,等接口結束commit的時候會報錯
org.springframework.transaction.UnexpectedRollbackException: Transaction rolled back because it has been marked as rollback-only
因為A的事物 被B標誌成rollback-only了
解決辦法
1.B接口裏面就對異常做try catch處理
2.B接口裏面新開一個事物
3.不對接口B進行try catch處理 這樣會自動把B的錯誤拋出來,而不是報上面那個錯
一直以為 遇到異常 try catch 不會影響到當前的事物,但是Spring管理的事物,並不是這樣。這個問題 是別人跟了半天源碼才幫我解決
所以,有時間跟一跟框架的源碼 才能更好的理解框架 而不是花大量時間去研究怎麽使用框架
Transaction rolled back because it has been marked as rollback-only
相關推薦
Transaction rolled back because it has been marked as rollback-only
解決辦法 框架 捕獲 back 結束 tro 接口 lba -o 出現這種錯誤的原因 1.接口A 調用了接口B 2.接口B報異常了,沒有在B裏面進行try catch捕獲 3.接口A對 接口B進行了try catch捕獲 因為接口B報異常 會把當前事物A接口的事物(如果B沒
Transaction rolled back because it has been marked as rollback-only分析解決方法
1. Transaction rolled back because it has been marked as rollback-only事務已回滾,因為它被標記成了只回滾<prop key="query*">PROPAGATION_REQUIRED,readOnly</prop>q
Transaction rolled back because it has been marked as rollback-only解決方案
預設spring事務只在發生未被捕獲的 runtimeexcetpion時才回滾。spring aop 異常捕獲原理:被攔截的方法需顯式丟擲異常,並不能經任何處理,這樣aop代理才能捕獲到方法的異常,才能進行回滾,預設情況下aop只捕獲runtimeexcep
Srping Transaction rolled back because it has been marked as rollback-only解決方案
1.異常相關描述 如題,此異常的全部資訊如下: org.springframework.transaction.UnexpectedRollbackException: Transaction rolled back because it has been marked a
spring事務(Transaction )報 marked as rollback-only異常的原因及解決方法
很多朋友在使用spring+hibernate或mybatis等框架時經常遇到報Transaction rolled back because it has been marked as rollback-only的異常,這個異常是怎麼造成的 呢,下面將給大家進行詳細的分析。 &nbs
Spring-Boot 出現Transaction marked as rollback only異常
最近在開發的過程中遇到了使用Transaction marked as rollback only的問題,瞭解到報錯的原因: 應該是事務被rollback了多次導致的錯誤。仔細看程式碼,由於專案中在aop切面、控制層、service分別開啟了一次事務,而
Transaction marked as rollback-only異常
1、當整個方法中每個子方法沒報錯時,整個方法執行完才提交事務,如果某個子方法有異常,spring將該事務標
XCode warning:“View Controller” is unreachable because it has no entry points
ins warning 指針 xcod tro 方案 ant access 不能 Unsupported Configuration: “View Controller” is unreachable because it has no entry points, and
VS2017 community創建模板錯誤 The document cannot be opened. It has been renamed, deleted or moved
nbsp rom ng- 模板生成 sfm visual mat block ati 當我使用我自己創建的模板生成工程,打開文件時,會出現“The document cannot be opened. It has been renamed, deleted or move
Type '' cannot conform to protocol '' because it has requirements that cannot be satisfied
jcp eth clas onf block some 編譯器 conf @class 我有一個Objective-C協議,我試圖在Swift類中實現。例如: @class AnObjcClass; @protocol ObjcProtocol <NSObjec
SparkException: Could not find CoarseGrainedScheduler or it has been stopped.
org.apache.spark.SparkException: Could not find CoarseGrainedScheduler or it has been stopped. at org.apache.spark.rpc.netty.Dispatcher.postMess
spring 丟擲自定義異常報java.lang.RuntimeException: org.apache.cxf.interceptor.Fault: Transaction rolled back
介紹一下我報這個錯誤造成的原因: 我啟用了aop全域性事務管理,但是我在業務程式碼中自定義了一個異常類繼承了Exception,當我需要在指定位置丟擲這個異常的時候,就會報:java.lang.RuntimeException: org.apache.cxf.inter
java.lang.IllegalStateException: Unable to open nested entry 'lib/bsfit-api-1.0.3.jar'. It has been
java.lang.IllegalStateException: Unable to open nested entry 'lib/bsfit-api-1.0.3.jar'. It has been compressed and nested jar files must
weex開發 - 載入index.js崩潰,白屏(may it has been destroyed so method:fireEvent is ignored,Url must be passe)
最近,博主在做weex專案中發現了一個奇怪的問題,分別會報如下幾個錯誤: 1.[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0
UnexpectedRollbackException: Transaction rolled back 關於失誤自動回滾的問題
完整的異常資訊: org.springframework.transaction.UnexpectedRollbackException: Transaction rolled back because it has been marked as rollback-onl
Account 893010 has been set as not relevant for tax Message no. M8889
Account 893010 has been set as not relevant for tax Message no. M8889 出現情況:第三方銷售MIRO Diagnosis In the purchase order, or when entering an
解決RuntimeError: cuda runtime error (30) : unknown error at /pytorch/aten/src/THC/THCGeneral.cpp:70&NVIDIA-SMI has failed because it couldn't c
解決兩個問題: (1)RuntimeError: cuda runtime error (30) : unknown error at /pytorch/aten/src/THC/THCGeneral.cpp:70 (2)NVIDIA-SMI has failed because it couldn
Machine-wide Progress Telerik Fiddler installation has been found at ...Please, use that one or uninstall it ...
問題描述:無法安裝Fiddle,提示已有Fiddle,但是卻找不到。 開啟Fiddle,提示“Machine-wide Progress Telerik Fiddler installation has been found at ...Please, use that one or uninstall i
Configuration 'compile' is obsolete and has been replaced with 'implementation'. It will be removed
AndroidStudio升級過程中,真的是一腳一個坑啊,好不容易解決完前面的問題,新問題又來了。 Configuration 'compile' is obsolete and has been replaced with 'implementation'. It will be remo
(sqlalchemy.exc.InvalidRequestError) Can't reconnect until invalid transaction is rolled back
專案使用web框架,使用sqlalchemy作為orm框架. 錯誤a: OperationalError: (_mysql_exceptions.OperationalError) (2006, 'MySQL server has gone away') 錯誤b: StatementError: (sq