Struct redefinition error with ROS2_SH and FastDDS_SH
cedricmelancon opened this issue · 1 comments
cedricmelancon commented
I'm trying to run the integration-service (from main branch taken 2 weeks ago) by configuring a ros2_dynamic SH and a fastdds SH.
My config YAML file is as follow:
systems:
dds: { type: fastdds }
ros2: {
type: ros2_dynamic,
namespace: "/",
node_name: "ros2sh_node",
domain: 0,
using: [sensor_msgs]
}
routes:
ros2_to_dds: {
from: ros2,
to: dds
}
dds_to_ros2: {
from: dds,
to: ros2
}
topics:
camera_depth: {
type: "sensor_msgs/Image",
route: ros2_to_dds
}
When I launch the following command:
integration-service ros2_mqtt.yaml
Then I get the following log:
[Integration Service][WARN] [is::sh::FastDDS] Participant not provided in configuration file. A participant using the default transport locators and Domain ID 0 will be created.
[Integration Service][INFO] [is::sh::FastDDS::Participant] Created Fast DDS participant 'default_IS-FastDDS-SH_participant' with default QoS attributes and Domain ID: 0
[Integration Service][INFO] [is::sh::FastDDS] Configured!
[Integration Service][INFO] [is::sh::ROS2_Dynamic] Adding types to Type Registry for ROS 2 Dynamic SystemHandle
terminate called after throwing an instance of 'eprosima::xtypes::idl::Parser::exception'
what(): Parser exception (<no file>:95:5): Struct "Vector3" redefinition.
Aborted
Is it an issue or I'm doing something wrong for the configuration?
Note that I'm implementing a new SystemHandler and got the same issue with ROS2_SH.
cedricmelancon commented
I tried to change the ROS2 SH from dynamic to static and I get a different error:
[Integration Service][WARN] [is::sh::FastDDS] Participant not provided in configuration file. A participant using the default transport locators and Domain ID 0 will be created.
[Integration Service][INFO] [is::sh::FastDDS::Participant] Created Fast DDS participant 'default_IS-FastDDS-SH_participant' with default QoS attributes and Domain ID: 0
[Integration Service][INFO] [is::sh::FastDDS] Configured!
[Integration Service][INFO] [is::sh::ROS2] Created node '/is_ros2_node_1804289383' with Domain ID: 18446744073709551615
[Integration Service][INFO] [is::sh::ROS2] Configured!
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Aborted