国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Mysql引起的spring事務(wù)失效

2019-11-15 01:11:13
字體:
供稿:網(wǎng)友
MySQL引起的sPRing事務(wù)失效

老項(xiàng)目加新功能,導(dǎo)致出現(xiàn)service調(diào)用service的情況..一共2張表有數(shù)據(jù)的添加刪除.然后測試了一下事務(wù),表A和表B,我在表B中拋了異常,但結(jié)果發(fā)現(xiàn),表B回滾正常,但是表A并沒有回滾.顯示事務(wù)失效.

比較巧的是表A和表B是在不同的service中,所以最開始想到的是多service導(dǎo)致的,但是查看了事務(wù)的定義后發(fā)現(xiàn),事務(wù)的傳播被設(shè)置成required,所以按理說所有service會(huì)處在一個(gè)事務(wù)中.經(jīng)過痛苦的各種折騰各種嘗試未果后,無意中發(fā)現(xiàn)每次都是表A事務(wù)無法回滾,這就有點(diǎn)奇怪了,這明顯就是操作表A的事務(wù)失效了.其實(shí)這里我已經(jīng)非常接近真正的原因了,只不過我依然認(rèn)為可能是自己的錯(cuò)誤配置導(dǎo)致操作表A的service事務(wù)失效,又是一陣折騰,實(shí)在看不出來有什么錯(cuò)誤的地方,有點(diǎn)無奈.

沒有什么思路,只好百度一下都有什么原因能導(dǎo)致事務(wù)失敗,看了一堆帖子,無意中看到一個(gè)情況,mysql引擎導(dǎo)致的事務(wù)失效,瞬間一下都明白了..

找到表A的定義語句末尾能看到如下:

ENGINE=MyISAM AUTO_INCREMENT=40 DEFAULT CHARSET=gbk

稍微百度一下就能知道,mysql的MyISAM引擎是不支持事務(wù)的,所以想要支持事務(wù),必須選擇InnoDB引擎,將表A的mysql引擎改成InnoDB后,一切恢復(fù)正常.

感想:事務(wù)失效第一印象一定是各種配置或是代碼的錯(cuò)誤,但是看似無害的數(shù)據(jù)庫可能才是隱藏在背后的罪魁禍?zhǔn)?.


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 屯留县| 山西省| 六枝特区| 株洲县| 乌恰县| 兰州市| 彰化市| 南部县| 洪泽县| 呼图壁县| 民和| 沅江市| 海晏县| 蒙城县| 获嘉县| 皮山县| 杨浦区| 台安县| 昆山市| 伊川县| 洞头县| 壶关县| 靖远县| 广宁县| 阿瓦提县| 墨玉县| 白河县| 莱西市| 邯郸县| 大足县| 睢宁县| 沅江市| 双柏县| 广灵县| 乌拉特前旗| 南城县| 麻城市| 巫溪县| 湖州市| 尼勒克县| 毕节市|