Skip to content

Bug: sporadic termination in a subscription read call #170

@artemsheinacn

Description

@artemsheinacn

Description

I found an issue that com terminates sporadically without any error message on com api call. In my com integration in FEO it always terminates on a read call and never on a write call.

Error Occurrence Rate

Highly Intermittent

How to reproduce

  1. In com-api-example increase the number of cycles to 50_000_000 (5mil is enough in 90% of cases), like so:
for i in 0..50000000 {
        monitor
            .write_tire_data(Tire {
                pressure: tire_pressure + i as f32,
            })
            .unwrap();
        let tire_data = monitor.read_tire_data().unwrap();
        println!("{tire_data}");
    }
  1. Add config file for com-api-example binary, like so:
rust_binary(
    name = "com-api-example",
    srcs = ["basic-consumer-producer.rs"],
    features = ["link_std_cpp_lib"],
    data = ["etc/config.json"],
  1. Run with bazelisk run //score/mw/com/example/com-api-example:com-api-example
    It almost always terminates before the full testing cycle without any error message, like so:
Tire data sent
1 samples received: sample[0] = Tire { pressure: 1859653.0 }(base) user@host:~/p/score/communication$

Supporting Information

No response

Classification

minor

Affected Version

0.5

Expected Closure Version

0.5

Category

  • Safety Related
  • Security Related

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions