Skip to content

Runtime errors with docker images #68

@Yadunund

Description

@Yadunund

Running either of the bpc_tester:latest and bpc_pose_estimator:example images leads to runtime errors as seen below.

bpc_pose_estimator:example

yadunund@yadu:~/ws_ibpc/src/bpc$ docker run --network=host -- bpc_pose_estimator:example
[INFO] [1745529787.290789049] [bpc_pose_estimator]: Starting bpc_pose_estimator...
[INFO] [1745529787.291762930] [bpc_pose_estimator]: Model directory set to /opt/ros/underlay/install/models.
[INFO] [1745529787.292388821] [bpc_pose_estimator]: Pose estimates can be queried over srv /get_pose_estimates.
Traceback (most recent call last):
  File "/opt/ros/overlay/install/lib/ibpc_pose_estimator_py/ibpc_pose_estimator", line 33, in <module>
    sys.exit(load_entry_point('ibpc-pose-estimator-py==0.0.0', 'console_scripts', 'ibpc_pose_estimator')())
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/ros/overlay/install/lib/python3.12/site-packages/ibpc_pose_estimator_py/ibpc_pose_estimator.py", line 140, in main
    rclpy.spin(pose_estimator)
  File "/opt/ros/jazzy/lib/python3.12/site-packages/rclpy/__init__.py", line 244, in spin
    executor.spin_once()
  File "/opt/ros/jazzy/lib/python3.12/site-packages/rclpy/executors.py", line 839, in spin_once
    self._spin_once_impl(timeout_sec)
  File "/opt/ros/jazzy/lib/python3.12/site-packages/rclpy/executors.py", line 834, in _spin_once_impl
    raise handler.exception()
  File "/opt/ros/jazzy/lib/python3.12/site-packages/rclpy/task.py", line 269, in __call__
    self._handler.send(None)
  File "/opt/ros/jazzy/lib/python3.12/site-packages/rclpy/executors.py", line 510, in handler
    call_coroutine = take_from_wait_list(entity)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/ros/jazzy/lib/python3.12/site-packages/rclpy/executors.py", line 450, in _take_service
    request_and_header = srv.handle.service_take_request(srv.srv_type.Request)
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: Incorrect sequence size(Error code: -7 )

bpc_tester:latest

[INFO] [1745529907.868325953] [ibpc_tester_node]: Tester node started...
[INFO] [1745529907.869029274] [ibpc_tester_node]: Datasets path is set to /opt/ros/underlay/install/datasets.
[INFO] [1745529907.870089765] [ibpc_tester_node]: Loading from dataset ipd with split_type val.
[INFO] [1745529907.871222006] [ibpc_tester_node]: Submission results will be written to /submission/submission.csv.
[INFO] [1745529909.388417286] [ibpc_tester_node]: Sending request for scene_id 0 img_id 5 for objects array('Q', [18])
thread '<unnamed>' panicked at library/std/src/time.rs:417:33:
overflow when adding duration to instant
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

No erros if nodes are run natively

On the bright side I am not able to reproduce these errors when running the nodes outside of docker. ie I have a Ubuntu 24.04 system with the latest Jazzy binaries installed and have built a workspace with packages in this repo.

ros2 run rmw_zenoh_cpp rmw_zenohd
export RMW_IMPLEMENTATION=rmw_zenoh_cpp
BOP_PATH=/home/yadunund/bpc_ws/models ros2 run ibpc_tester ibpc_tester 
export RMW_IMPLEMENTATION=rmw_zenoh_cpp
ros2 run ibpc_pose_estimator_py ibpc_pose_estimator --ros-args -p model_dir:=/home/yadunund/bpc_ws/src/bpc/models

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions