AWS RDS中的休眠反应性非Vert.x上下文处于活动状态

人气:144 发布:2023-01-03 标签: mysql hibernate vert.x hibernate-reactive

问题描述

我在我的应用程序中随机收到此异常: HR000065:没有活动的Vert.x上下文

java.lang.IlLegalStateException:HR000065:没有活动的Vert.x上下文

2021-11-09T17:12:18.143+02:00 Org.hibernate.reactive.context.impl.VertxContext.put(VertxContext.java:41) ~[hibernate-reactive-core-1.0.1.Final.jar!/:1.0.1.Final]

2021-11-09T17:12:18.143+02:00已抑制: Reactor.core.publisher.FluxOnAssembly$OnAssemblyException:

2021-11-09T17:12:18.143+02:00在以下位置观察到错误 站点:

2021-11-09T17:12:18.143+02:00|_Checkpoint⇢处理程序 Com.nflp.processingapplication.main.modules.authentication.controller.PrincipalController#getUserAuthentication() [Dispatcher Handler]

2021-11-09T17:12:18.143+02:00|_Checkpoint⇢ Com.nflp.processingapplication.main.modules.api.shared.filter.ApiExceptionFilter

它并不总是发生,但在几次之后,我开始接收对数据库的任何请求的超时异常,看起来连接从未被释放。 此外,我只在prod环境中收到此错误我们使用的是AWS rds,它在本地运行得很好,即使我创建了一条到rds实例的ssh隧道并在本地连接到prod db。 我只在我的应用程序中使用了诸如with Transaction和with Session这样的方法,所以我认为这不会成为实现功能的问题。

API

问题与我使用Stage.Session推荐答案实现并使用Mono.FromCompleationStage()将其转换为反应性Java流[Flux,Mono]有关。 切换到Mutiny API后,我无法再重现此问题。

23