eclipse-iceoryx / eclipse-iceoryx/iceoryx

make ChunkDistributor lock-free

Open
#1,710 0 comments 0 reactions 0 assignees View on GitHub
enhancement
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.