Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[foxy] Disable test_record_qos_profiles tests on Windows #1349

Merged
merged 3 commits into from
May 25, 2023

Conversation

MichaelOrlov
Copy link
Contributor

@MichaelOrlov MichaelOrlov commented May 24, 2023

  • Addressing CI failure on Windows with error message:
Error Message
TestRos2BagRecord.test_incomplete_qos_profile failed
TestRos2BagRecord.test_qos_simple failed
Stacktrace
====================================================================================================================================================================================================================
FAIL: TestRos2BagRecord.test_incomplete_qos_profile
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Python38\lib\shutil.py", line 613, in _rmtree_unsafe
    os.unlink(fullname)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp\\tmp7vlb4c65\\ros2bag_test_incomplete_0.db3'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Python38\lib\tempfile.py", line 803, in onerror
    _os.unlink(path)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp\\tmp7vlb4c65\\ros2bag_test_incomplete_0.db3'

example of the failing job https://ci.ros2.org/job/ci_windows/19530/testReport/ros2bag.test/test_record_qos_profiles/test_record_qos_profiles/

- Replaced ->get_actual_qos() to the ->qos_profile() as it was before #1335.
For some reason on Foxy it doesn't work as expected. Probably due to the missing some underlying dependencies in other core packages.

Disable test_record_qos_profiles tests on Windows since they are flaky.

@MichaelOrlov
Copy link
Contributor Author

Gist: https://gist.githubusercontent.com/MichaelOrlov/4889b773e02d6746516683ce8fb2faf8/raw/153d3c8a2581bfe0fbb1f93eebcdd838793b5c08/ros2.repos
BUILD args: --packages-above-and-dependencies ros2bag rosbag2_transport
TEST args: --packages-above ros2bag rosbag2_transport
ROS Distro: foxy
Job: ci_launcher
ci_launcher ran: https://ci.ros2.org/job/ci_launcher/12111

  • Linux Build Status
  • Linux-aarch64 Build Status
  • Windows Build Status

@MichaelOrlov
Copy link
Contributor Author

Rebuild with focal
Gist: https://gist.githubusercontent.com/MichaelOrlov/4889b773e02d6746516683ce8fb2faf8/raw/153d3c8a2581bfe0fbb1f93eebcdd838793b5c08/ros2.repos
BUILD args: --packages-above-and-dependencies ros2bag rosbag2_transport
TEST args: --packages-above ros2bag rosbag2_transport
ROS Distro: foxy
Job: ci_launcher
ci_launcher ran: https://ci.ros2.org/job/ci_launcher/12112

  • Linux Build Status
  • Linux-aarch64 Build Status
  • Windows Build Status

@MichaelOrlov
Copy link
Contributor Author

@emersonknapp Do you know how to disable abi-checker?
We still have a failure with finding lz4frame.h dependencies in the mcap_vendor package which is making buid unstable and failing Fpr job.

#include "/tmp/tmp3d4jnobg/files/opt/ros/foxy/include/rosbag2_transport/visibility_control.hpp"
  #include "/tmp/tmp3d4jnobg/files/opt/ros/foxy/include/zstd.h"

The GCC parameters:
  /usr/bin/x86_64-linux-gnu-gcc-9 -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w --std=c++17 -DBOOST_HAS_PTHREADS=1 -I/opt/ros/foxy/src/gtest_vendor/include -DRCUTILS__STDATOMIC_HELPER_H_ -DRTI_UNIX -I/opt/ros/foxy/include "/tmp/Lnxtd_v6Sg/dump1.h"  -I/tmp/tmp3d4jnobg/files/opt/ros/foxy/include

In file included from /tmp/Lnxtd_v6Sg/dump1.h:39:
/tmp/tmp3d4jnobg/files/opt/ros/foxy/include/mcap_vendor/mcap/reader.inl:4:10: fatal error: lz4frame.h: No such file or directory
    4 | #include <lz4frame.h>
      |          ^~~~~~~~~~~~
compilation terminated.
 [err] Compilation problems during compiling headers 'orig' at /tmp/tmp3d4jnobg
# END SUBSECTION
MAKE_BUILD_UNSTABLE

Also, the Windows CI job failure with the same error message as before the fix surprised me since I verified it on my local environment.

@MichaelOrlov
Copy link
Contributor Author

Re-run Windows CI build

  • Windows Build Status

@emersonknapp
Copy link
Collaborator

emersonknapp commented May 24, 2023

The ABI checker is enabled via https://github.com/ros/rosdistro/blob/master/foxy/distribution.yaml#L5710 - in this case I say we can just merge as long as the only issue in the Fpr build is the ABI checker. If everything else is green then it's OK by me. No need to go change rosdistro

@MichaelOrlov
Copy link
Contributor Author

@emersonknapp Thanks for the information. I will hold on from disabling abi-checker for a while.
Do you have any ideas why CI Windows job still fails with the same error https://ci.ros2.org/job/ci_windows/19545/testReport/junit/ros2bag.test/test_record_qos_profiles/test_record_qos_profiles/ even though I have verified it locally building and running from scratch twice on my local machine?

@MichaelOrlov
Copy link
Contributor Author

@emersonknapp Never mind. I've found that it was failing even before.

- Replace get_actual_qos() to the qos_profile() as it was before #1335
For some reason on Foxy it doesn't work as expected. Probably due to the
missing some underlying dependencies in other core packages.

Signed-off-by: Michael Orlov <[email protected]>
This reverts commit f50f46a.

Signed-off-by: Michael Orlov <[email protected]>
- test_record_qos_profiles failures is a known issue described in the
#454
- To fix those tests need to backport #462, #466, #470, #472, #525
- Skipping them for a while

Signed-off-by: Michael Orlov <[email protected]>
@MichaelOrlov MichaelOrlov force-pushed the morlov/foxy-fix_regression_in_ros2bag branch from 795e00e to 91bccfd Compare May 25, 2023 07:09
@MichaelOrlov MichaelOrlov changed the title Fix for CI regression in TestRos2BagRecord Disable test_record_qos_profiles tests on Windows May 25, 2023
@MichaelOrlov MichaelOrlov changed the title Disable test_record_qos_profiles tests on Windows [foxy] Disable test_record_qos_profiles tests on Windows May 25, 2023
@MichaelOrlov
Copy link
Contributor Author

Re-run CI after returning changes and disabling tests on Windows
Gist: https://gist.githubusercontent.com/MichaelOrlov/4889b773e02d6746516683ce8fb2faf8/raw/153d3c8a2581bfe0fbb1f93eebcdd838793b5c08/ros2.repos
BUILD args: --packages-above-and-dependencies ros2bag rosbag2_transport
TEST args: --packages-above ros2bag rosbag2_transport
ROS Distro: foxy
Job: ci_launcher
ci_launcher ran: https://ci.ros2.org/job/ci_launcher/12119

  • Linux Build Status
  • Linux-aarch64 Build Status
  • Windows Build Status

@MichaelOrlov
Copy link
Contributor Author

Windows build marked unstable due to the warnings about 'YAML_CPP_DLL': macro redefinition this is a known issue and exists on baseline.

@emersonknapp
Copy link
Collaborator

emersonknapp commented May 25, 2023

'YAML_CPP_DLL': macro redefinition this is a known issue and exists on baseline.

Any way we could backport a fix for this so that Foxy goes into its final release green?

EDIT: i went ahead and made one #1353

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants