aliyun / aliyun/SimAI

多线程死锁

Open
#179 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1.2k
Forks
184
Avg merge
13h 4m
Merged PRs (30d)
1

Description

在entry.h 162行,写log时使用了flowTag.tag_id查找waiting_to_notify_receiver,而真正新建的是flowTag.current_flow_id,会导致插入不存在的键值,在多线程或者某些情况下,可能导致waiting_to_notify_receiver成环,进而程序死锁。不知道对不对,请排查一下

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at entry.h line 162 and trace how waiting_to_notify_receiver is written and how its keys are created from flowTag. Compare the use of tag_id with current_flow_id, then investigate whether concurrent execution can form a cycle and deadlock. Done means the suspected key mismatch and deadlock risk are confirmed or ruled out with the relevant behavior addressed.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.