eclipse-iceoryx / iceoryx2

Eclipse iceoryx2™ - true zero-copy inter-process-communication in pure Rust
https://iceoryx.io
Apache License 2.0
1.03k stars 40 forks source link

When Publisher disconnects before subscriber called receive samples are lost #337

Closed elfenpiff closed 2 months ago

elfenpiff commented 3 months ago

Required information

Observed result or behaviour: When a publisher sends samples and removes itself before the subscriber called Subscriber::receive then the samples are lost.

Expected result or behaviour: The Subscriber::receive call shall return samples until they are no more.

Details: The problem originates in the update_connections call in the Subscriber. Whenever receive is called this method is called internally at first. When the method discovers that a publisher has disconnected it removes the zero copy connection, therefore the subscriber can no longer acquire sample from that connection leading to lost samples.