首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

@父事务正在回滚的事务性propogation_new

事务性propagation_new是一种事务传播行为,它表示在当前事务中创建一个新的事务,并在当前事务中回滚。事务传播行为是指在多个事务之间进行传播和管理的规则。

事务性propagation_new的特点是:

  • 在当前事务中创建一个新的事务,即使当前事务已经存在。
  • 如果当前事务存在,新的事务将在当前事务的范围内运行,如果当前事务回滚,新的事务也会回滚。
  • 如果当前事务不存在,将创建一个新的事务。

事务性propagation_new适用于以下场景:

  • 当需要在一个独立的事务中执行一段代码,并且希望该事务与当前事务无关时,可以使用事务性propagation_new。
  • 当需要在当前事务回滚时,同时回滚新创建的事务时,可以使用事务性propagation_new。

腾讯云提供了一系列与事务相关的产品和服务,例如:

  • 云数据库 TencentDB:提供了高可用、可扩展的数据库服务,支持事务处理和数据一致性。
  • 云服务器 CVM:提供了可靠的计算资源,可以在上面部署应用程序,并进行事务处理。
  • 云原生服务 TKE:提供了容器化的服务,可以在容器中运行应用程序,并进行事务处理。

更多关于腾讯云的产品和服务信息,请访问腾讯云官方网站:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

java spring事务方法、子方法各自问题处理

java spring事务方法、子方法各自问题处理 问题描述 service实现类中A方法(方法)调用B方法(子方法),两个方法均开启事务,且事务各自独立,A方法和B方法均可自行且相互之间各不干扰...A方法 注解@Transactional(rollbackFor = Exception.class) 开启A方法事务 其中: goodsService.importData3(); 调用B方法或者采用...SpringUtils.getAopProxy(this).importData3(); 调用B方法均可以,这里try catch B方法异常是为了防止B方法造成异常影响到A方法插入 代码如下:...; } B方法 注解@Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRES_NEW)开启B方法事务...,且A方法与B方法不属于同一个事务 @Override @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRES_NEW

18610

springboot 事务,多张表操作事务

实际情景如下: 删除一个导航,需要删除a表; 删除导航子模块需要删除b表; b表和c表有个关联关系表,需要删除c表关联关系 结果为a表数据删除成功了,b表数据未成功删除,这时候我们应该是b表数据...,a表数据也,那么我们应该怎么实现这种方式呢?...第一步,在springboot启动类上开启事务,注解 @EnableTransactionManagement 第二步:事务注解, @Transactional(rollbackFor = Exception.class...TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return result; } } 如果三个表中有一个表删除失败返回false或者产生异常,都会产生事务...,将之前添加或者修改数据进行

3.1K40

Redis-10Redis事务

文章目录 概述 场景一: 命令格正确,数据类型错误 场景二:命令格式错误 总结 概述 对于 Redis 而言,不单单需要注意其事务处理过程,其能力也和数据库不太一样,这也是需要特别注意一个问题一...Redis 事务遇到命令格式正确而数据类型不符合 ,如下所示。...,说明被 Redis 事务滚了。...---- 总结 通过上面两个例子,可以看出Redis在执行事务命令时候,在命令入队时候, Redis 就会检测事务命令是否正确,如果不正确则会产生错误。...无论之前和之后命令都会被事务,就变为什么都没有执行。 当命令格式正确,而因为操作数据结构引起错误 ,则该命令执行出现错误,而其之前和之后命令都会被正常执行。

85130

Spring嵌套事务是怎么

期待结果是即便内部事务regCourse()发生异常,外部事务saveStudent()俘获该异常后,内部事务应自行,不影响外部事务。 这是什么原因造成呢?...() 若发现事务被标记了全局,且在发生全局时,判断是否应该提交事务,这个方法默认返回 false,这里无需关注 isGlobalRollbackOnly() 该方法最终进入 DataSourceTransactionObject...在 regCourse()中抛异常,并触发回操作时,这个会继续传播,从而把 saveUser() 也,最终整个事务都被!...修正 Spring事务默认传播属性 REQUIRED,在整个事务调用链上,任一环节抛异常都会导致全局。...,让这个子事务单独,不会影响到主事务

1.4K50

Spring事务两种方法

当然,Spring事务前提是你当前使用数据库必须支持事务,比如MySQLInnodb是支持,但Mysaim则是不支持事务。...方法一 使用 @Transaction 来配置自动,可以配置在类上,也可以配置在方法上(作用域不同),但对final或private修饰方法无效,且该类必须是受spring所管控,也就是被已经被注入类...,则事务会被自动,除非你在该方法中手动捕获了异常,且没有抛出新异常。...可以使用 @Transactional(rollbackFor = Exception.class) 来设定针对特定异常进行事务,如果不设置则默认会 RuntimeException and...} } 复制代码 方法二 通过注入 DataSourceTransactionManager 来手动开启事务,手动事务,用于抛出异常被catch后,进行手动,可控程度更高,可以更灵活使用。

1K10

PostgreSQLclog—从事务速度谈起

如果是之前学习别的数据库的人,看PostgreSQL会感觉到有句话非常奇怪:“PostgreSQL是立即完成,不会受到事务大小本身影响”。 奇怪在哪里呢?...看到这里,就可以明白,只要事务提交时候,设置状态为已提交,而事务时候,设置状态为已中断,就可以达到目的,的确避免了操作数百万行事务突然要回时候巨大代价。...事务提交与时候clog操作 ---- 首先来说提交。...但期间有情况,或者事务期间多次save point)必须尽可能原子性方式写入,否则事务可见性就会出现问题。...首先,写入的当时,事务没有结束时候,必然是”执行中”这个状态。当事务之后提交,或者回时候,pg是必然不会回头改这个标记,否则无论提交还是,都是一个代价巨大事情。

1.6K20

咦,为什么我事务不了?

MySQL 事务小伙伴们都懂,通过 begin 开启事务,通过 commit 提交事务或者通过 rollback 事务。...,那么在具体使用事务事务可能就会遭遇一些莫名其妙问题。...。 再次查询数据。 到第六步时候,我们发现查询到数据只剩三条了,说明第五步并没有生效。原因就在于执行 alter 之前,事务已经被隐式提交了。...对于上面的案例,如果大家去掉第四步 alter,那么是可以滚成功,这个小伙伴们自己来测试,我就不演示了。...我举个简单例子: 可以看到,跟第一小节测试步骤一样,只不过第四步换成一个 GRANT 语句,那么最终事务也会失效,原因就在于事务已经提交了。

94120

PostgreSQLclog—从事务速度谈起

一个kill命令过去之后,我们当时俩DBA开始慢慢数—小蚂蚁慢慢爬——碰到—颗大豆芽——碰到两颗大豆芽—— 最终在将近三个小时rollback之后,这个事务完成,业务系统恢复。...看到这里,就可以明白,只要事务提交时候,设置状态为已提交,而事务时候,设置状态为已中断,就可以达到目的,的确避免了操作数百万行事务突然要回时候巨大代价。...事务提交与时候clog操作 ---- 首先来说提交。...但期间有情况,或者事务期间多次save point)必须尽可能原子性方式写入,否则事务可见性就会出现问题。...首先,写入的当时,事务没有结束时候,必然是”执行中”这个状态。当事务之后提交,或者回时候,pg是必然不会回头改这个标记,否则无论提交还是,都是一个代价巨大事情。

2.6K20

spring事务多种方式「建议收藏」

1.代码中事务控制3种方式 编程式事务:就是直接在代码里手动开启事务,手动提交,手动。优点就是可以灵活控制,缺点就是太麻烦了,太多重复代码了。...当然,事务不回都是采用声明式事务或者是注解事务;编程式事务都是自己写代码手动,因此是不会出现不回现象。...再说下声明式事务和注解事务原理:当被切面切中或者是加了注解方法中抛出了RuntimeException异常时,Spring会进行事务。...正常情况下,按照正确编码是不会出现事务失败。...下面说几点保证事务方法 (1)如果采用编程式事务,一定要确保切入点表达式书写正确 (2)如果Service层会抛出不属于运行时异常也要能,那么可以将Spring默认异常修改为Exception

1.7K40

spring之事务其它属性(隔离级别、、只读、过期)(四)

2.使用 isolation 指定事务隔离级别, 最常用取值为 READ_COMMITTED。 3.默认情况下 Spring 声明式事务对所有的运行时异常进行....若真的是一个只读取数据库值方法, 应设置 readOnly=true。 5.使用 timeout 指定强制之前事务可以占用时间。...加上noRollbackFor,指定遇到UserAccountException异常后不回,我们对testBookShopService进行测试,即使我们加上了Transactional注解,但遇到余额不足时不进行...设置timeout指定强制时间。我们在purchase里面加上休眠,此时休眠2s<3s。 并将数据库中数据重新设置为: ? ? 此时我们测试testBookShopService,结果为: ?...虽然我们余额还可以再买一本,但是强制时间=3s<程序执行时间,所以进行强制

68730

【面试】Spring事务面试考点整理

Spring事务三要素 数据源:表示具体事务性资源,是事务真正处理者,如MySQL等。 事务管理器:像一个大管家,从整体上管理事务处理过程,如打开、提交、等。...如何一个事务 就是在一个事务上下文中当前正在执行代码里抛出一个异常,事务基础设施代码会捕获任何未处理异常,并且做出决定是否标记这个事务。...事务注解在类上继承性 @Transactional注解作用可以传播到子类,即如果类标了子类就不用标了。但倒过来就不行了。 子类标了,并不会传到类,所以类方法不会有事务。...这样安排的话,底层事务资源是不同,因此,可以独立地提交或。外围事务不会被内部事务状态影响。这样一个独立内部事务可以声明自己隔离级别,超时时间和只读设置,并不继承外围事务特性。...,如果第一个事务,第二个事务获取到数据将是无效

1.2K20

Spring事务提交和机制,以及分布式事务处理解决方案

Spring事务提交和机制如下:提交机制:Spring事务默认提交机制是自动提交。当事务方法顺利执行完成(没有抛出异常)时,Spring会自动将事务提交到数据库中保存。...这意味着对数据库操作会永久保存。机制:Spring事务机制可以分为两种情况:未检查异常(unchecked exception):当事务方法抛出未检查异常时,Spring会自动事务。...在发生未检查异常时,事务将回并数据库中操作将被撤销。检查异常(checked exception):当事务方法抛出检查异常时,默认情况下Spring不会自动事务。...这是因为检查异常通常表示一个业务逻辑错误,可能是临时或者可以修复。如果想要让Spring也事务,可以使用@Transactional注解rollbackFor属性指定需要回异常类型。...,Spring事务会根据异常类型是否为检查异常以及是否配置了异常类型来决定是否事务

64291

分布式事务TCC模式和业务悬挂问题

# TCC模式和业务悬挂问题 首先回顾一下TCC模式 # TCC模式原理 TCC模式与AT模式非常相似,每阶段都是独立事务,不同是TCC通过人工编码来实现数据恢复。...那么什么是控和业务悬挂呢? 空:当某分支事务try阶段阻塞时,可能导致全局事务超时而触发二阶段cancel操作。...如下图所示 空情况: 上方调用分支按照TCC流程正常执行,此时下方调用分支因为某种原因而阻塞了,由于长时间没有执行,这个分支发生了超时错误,由TM经过2.1步骤发送超时错误,全局事务指令给TC...业务悬挂情况: 假设在上方基础上,下方分支阻塞畅通了,此时他执行1.4去锁定资源(try),但整个事务都已经结束了,所以他不会执行第二阶段,但冻结了资源,这种情况应该进行避免。...是unsigned字段,不可能为负数,所以这里不用检测余额 // 直接扣减为负数会抛出异常,这里事务注解 // 0.

5.8K31

【面试】Spring事务面试考点吐血整理(建议珍藏)

Spring事务三要素 数据源:表示具体事务性资源,是事务真正处理者,如MySQL等。 事务管理器:像一个大管家,从整体上管理事务处理过程,如打开、提交、等。...如何一个事务 就是在一个事务上下文中当前正在执行代码里抛出一个异常,事务基础设施代码会捕获任何未处理异常,并且做出决定是否标记这个事务。...事务注解在类上继承性 @Transactional注解作用可以传播到子类,即如果类标了子类就不用标了。但倒过来就不行了。 子类标了,并不会传到类,所以类方法不会有事务。...这样安排的话,底层事务资源是不同,因此,可以独立地提交或。外围事务不会被内部事务状态影响。这样一个独立内部事务可以声明自己隔离级别,超时时间和只读设置,并不继承外围事务特性。...,如果第一个事务,第二个事务获取到数据将是无效

58530

记一次大事务导致数据库奇慢

这个专题讲一些日常运维异常处理 以前请查看: http://www.zhaibibei.cn/oracle/1.1/ 今天讲一次大事务导致数据库奇慢 1....wait-for-a-undo-record-or-wait-for-stopper-event-to-be-increased-database-messages/ 从上面我们得知当Oracle做大事物时...select value from v$parameter where lower(name) = 'undo_tablespace')), 2) PCT_INUSE FROM dual 2.6 查看当前事务占用...修改后重启数据库 fast_start_parallel_rollback = false scope=spfile; 如果不使用spfile,可能会导致大量enq: PE - contention等待 重启后等待完成可将值修改回来...4.关于FAST_START_PARALLEL_ROLLBACK 该参数用于指定并行度,当使用fast-start parallel rollback时 smon充当coordinator角色并开启相应多个

1.4K10

MySQL数据库——事务操作(开启、、提交)、特征、隔离级别基础总结

1.1 事务操作 开启事务:start transaction; :rollback; 提交:commit; 【举例】:还是用这个A给B转账例子,在SQLyog中进行模拟开启事务、提交 -...事务 ROLLBACK; 1)在A窗口中先开启事务,然后执行张三账户-500,-》出错了-》李四账户+500,此时查询A窗口数据,张三确实-500,但李四还是100;在B窗口中查询数据,张三和李四都是...2)发现错误后,执行操作,再次在窗口A和B中查询,数据都是1000,操作成功。...2 事务四大特征 1)原子性:是不可分割最小操作单位,要么同时成功,要么同时失败; 2)持久性:事务一旦提交或,数据表数据将被持久化保存; 3)隔离性:多个事务之间相互独立; 4)一致性:表示事务操作前后...,兴奋坏了,但是A及时发现,马上回差点提交事务,将数字改回1000再提交。

18.6K30
领券