Enum ros2_client::ros2::ReadError
source · pub enum ReadError {
Deserialization {
reason: String,
},
UnknownKey {
details: String,
},
Poisoned {
reason: String,
},
Internal {
reason: String,
},
}
Expand description
Error type for DDS “read” type operations.
Variants§
Deserialization
Data received over RTPS could not be decoded. Reason field gives more details on what went wrong.
UnknownKey
DDS received a data instance dispose message via RTPS, but was asked to dispose an instance, which we do not have.
If that data instance was published and last available for reading before this DataReader joined the domain (i.e. was started), then it is normal that we do not know it. Otherwise, it could be a symptom of communication or serialization error.
Poisoned
Communication or synchronization with RTPS processing thread or Discovery thread fails. This is most likely because either thread has panicked or gotten stuck somewhere, neither of which is supposed to happen. This is typically not recoverable, except by starting a new DomainParticipant.
Internal
Something that should not go wrong went wrong anyway. This is usually a bug in RustDDS