You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The unit tests in the tracer_test module are time-dependent, which is not the best way to test concurrent code.
The use of timing was done in an effort to affect the trace event routing algorithm as least as possible: we cannot synchronise with it via message passing to influence the different interleaved execution of the offline tracer (responsible only for managing the interleaving of system process trace events) and the trace event routing algorithm (responsible for forwarding events to the correct tracer), which is, itself, concurrent.
The general problem with these types of tests is that assertions are too fine-grained, and attempt to check every step in the execution, rather than focusing on the final monitored system configuration.
These assertions must, therefore, be rewritten to check the monitored system internal state and resulting configuration in a coarser manner.
The suspicion is that this must be done, once, at the end of each test run.
It is due to this reason that presently, tracer_test will not be executed in the build pipeline; this will be reverted once the module and tests within are fixed.
The text was updated successfully, but these errors were encountered:
The unit tests in the
tracer_test
module are time-dependent, which is not the best way to test concurrent code.The use of timing was done in an effort to affect the trace event routing algorithm as least as possible: we cannot synchronise with it via message passing to influence the different interleaved execution of the offline tracer (responsible only for managing the interleaving of system process trace events) and the trace event routing algorithm (responsible for forwarding events to the correct tracer), which is, itself, concurrent.
The general problem with these types of tests is that assertions are too fine-grained, and attempt to check every step in the execution, rather than focusing on the final monitored system configuration.
These assertions must, therefore, be rewritten to check the monitored system internal state and resulting configuration in a coarser manner.
The suspicion is that this must be done, once, at the end of each test run.
It is due to this reason that presently,
tracer_test
will not be executed in the build pipeline; this will be reverted once the module and tests within are fixed.The text was updated successfully, but these errors were encountered: