R2DBC-这可能是导致不可预测结果的错误
我们使用spring-data-r2dbc:1.3.2
和dev.miku:r2dbc-mysql:0.8.2.release
并在生产中遇到一个奇怪的问题。
我们不了解什么是根本原因,以及它是可恢复的还是可以真正产生不可预测的结果(如日志所建议的)。
我们定期看到错误日志如下:
- logger:dev.miku.r2dbc.mysql.client.reaeactornettyclient
- 级别:错误
- 消息:Exchange已取消交换处于Actection Active。这可能是 导致不可预测结果的错误。
我们每天看到几次,这使我们感到紧张,因为它明确指出:这可能导致不可预测的结果
我们在日志中没有获得任何其他信息。
一些问题:
- 它真的很危险还是我们可以将其视为警告?
- 我们如何调试它以了解其原因?
- 从源代码中,我们可以看到它假设如果未完成,交换请求将无法取消,并将这种情况视为错误。有意义吗?如果由于“连接下降”或任何其他原因取消了反应流,该怎么办?
We use spring-data-r2dbc:1.3.2
and dev.miku:r2dbc-mysql:0.8.2.RELEASE
and experience a strange issue in production.
We don't understand what is the root cause and whether it is a recoverable or can really create unpredictable outcome (as the log suggests).
Periodically, we see error log as following:
- logger: dev.miku.r2dbc.mysql.client.ReactorNettyClient
- level: ERROR
- message: Exchange cancelled while exchange is active. This is likely
a bug leading to unpredictable outcome.
We see it a few times a day and it makes us nervous since it explicitly states: This is likely a bug leading to unpredictable outcome
We do not get any additional info in the log.
A few questions:
- Is it really dangerous or can we consider it as a warning?
- How do we debug it in order to understand its cause?
- From the source code we could see that it assumes that exchange request cannot be cancelled if it was not completed and consider this situation as a BUG. Does it make sense? What if reactive stream was cancelled due to 'connection drop' or any other reason?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论