Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

关于FlowExecutor 填充元数据后,重新获取数据后,产生数据丢失和线程不安全的问题 #46

Open
CALLEVE opened this issue Sep 11, 2023 · 0 comments

Comments

@CALLEVE
Copy link

CALLEVE commented Sep 11, 2023

我这边在使用 liteflow时 遇到一个问题 基于 liteflow-core 2.6.7
如上图 线程 29 和 30 在 FlowExecutor 装填参数的 时候 row 都是有值 ,而在 ActionComponent(NodeComponent的实现类)中获取到 slot.getRequestData() 的时候 ,row被置空了 而且 线程29 和 线程30 ,数据被污染了(被覆盖了),现象是随机出现的,同样的数据 前一次可能失败,后面的都是成功的 ,问题的发生没有规律性
请问 有遇到过这个情况吗?
微信图片_20230911134425
微信图片_20230911134425_1

关于日志是输出的补充

2023-09-11 13:11:11.238 INFO 16704 [http-nio-9003-exec-30] com.yomahub.liteflow.core.FlowExecutor slot[0] offered
2023-09-11 13:11:11.239 INFO 16704 [http-nio-9003-exec-29] com.yomahub.liteflow.core.FlowExecutor slot[0] offered
2023-09-11 13:11:11.239 INFO 16704 [http-nio-9003-exec-29] com.yomahub.liteflow.core.FlowExecutor requestId[zXVPZq4wdi8RqBrmwedJk] has generated
2023-09-11 13:11:11.239 INFO 16704 [http-nio-9003-exec-30] com.yomahub.liteflow.core.FlowExecutor requestId[EX9O89VV33A2agXpS5tmF] has generated

线程 29 和 30 生成的requestId 是不同的 但是 在slot 槽位的获取上,却同时获取到了 slot[0]

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant