eclipse-iceoryx / eclipse-iceoryx/iceoryx
Remove potential redundancies introduced by storing port options
- Dominant language
- C++
- Stars
- 2.2k
- Forks
- 492
- Avg merge
- 18h 57m
- Merged PRs (30d)
- 1
Description
## Brief feature description
By adding PublisherOptions and SubscriberOptions to PublisherPortData and SubscriberPortData in #1029 we may have introduced redundancies since some of the values could be (implicitly) stored at lower levels (e.g. members in ChunkReceiverData, queue capacities etc.).
While having the options in one place (as it is now) is preferable, we need to make sure that the overall design does not allow to create inconsistent or invalid port configurations. Considering the current dependencies it is not immediately clear whether this is currently the case.
Goal: The options of a port must always reflect how it is actually configured.
## Detailed information
1. Further dependency and data member analysis needed (wrt. port options)
2. If necessary refactor PublisherPortData and SubscriberPortData to make it impossible to create inconsistent port configurations (if this is currently possible)
Note: in the default use cases it should not be possible to create inconsistent configurations as of now. (e.g. after using invoking the constructors).
Contributor guide
Research direction
Start by tracing PublisherOptions and SubscriberOptions through PublisherPortData and SubscriberPortData, then compare them with lower-level members such as ChunkReceiverData and queue capacities. Review the changes introduced by #1029 and determine whether any construction path can produce inconsistent port configurations. Done means the options always reflect the actual configuration and invalid combinations cannot be created.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- distributed-systems
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100