eclipse-iceoryx / eclipse-iceoryx/iceoryx
make ChunkDistributor lock-free
- Dominant language
- C++
- Stars
- 2.2k
- Forks
- 492
- Avg merge
- 18h 57m
- Merged PRs (30d)
- 1
Description
## Brief feature description
Taken from todo from `chunk_distributor_data.hpp`:
If we would make the ChunkDistributor lock-free, can we than extend the UsedChunkList to
be like a ring buffer and use this for the history? This would be needed to be able to safely cleanup.
Using ShmSafeUnmanagedChunk since RouDi must access this list to cleanup the chunks in case of an application
crash.
Contributor guide
Research direction
Start with the TODO in chunk_distributor_data.hpp and trace ChunkDistributor, UsedChunkList, ShmSafeUnmanagedChunk, and RouDi. Determine how the list is accessed during application-crash cleanup and what lock-free ring-buffer behavior would need to guarantee; done requires an agreed design and implementation scope.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- distributed-systems, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100