Skip to content

RMW QoS incoming buffer handling - #165

Merged
pablogs9 merged 32 commits into
galacticfrom
feature/qos_buffers
Sep 28, 2021
Merged

RMW QoS incoming buffer handling#165
pablogs9 merged 32 commits into
galacticfrom
feature/qos_buffers

Conversation

@pablogs9

@pablogs9 pablogs9 commented Sep 8, 2021

Copy link
Copy Markdown
Member

This PR implements the logic for handling the incoming RMW buffer depending on the QoS

TODO:

  • Req res tests
  • Backport to main and foxy

@pablogs9
pablogs9 requested a review from Acuadros95 September 8, 2021 13:02
Comment thread .github/workflows/ci.yml Outdated
@github-actions

Copy link
Copy Markdown

Static memory analysis

Default configuration

MTU: 512 B
Input buffer size: 2048 B
Input history: 4
Output buffer size: 2048 B
Output history: 4

Entity Qty Size per unit
Context 2 5600 B
Topic 8 56 B
Service 4 168 B
Client 4 168 B
Subscription 4 168 B
Publisher 4 184 B
Node 4 56 B
Static input buffer 8 2136 B

TOTAL: 31492 B

@pablogs9

Copy link
Copy Markdown
Member Author

@mergify backport main foxy

@mergify

mergify Bot commented Sep 10, 2021

Copy link
Copy Markdown
Contributor

Command backport main foxy: pending

Waiting for the pull request to get merged

Hey, I reacted but my real name is @Mergifyio

Comment thread rmw_microxrcedds_c/CMakeLists.txt Outdated
Comment thread rmw_microxrcedds_c/src/config.h.in Outdated
Comment thread rmw_microxrcedds_c/src/rmw_wait.c Outdated
Comment thread rmw_microxrcedds_c/src/types.c
Comment thread rmw_microxrcedds_c/src/callbacks.c
Comment thread rmw_microxrcedds_c/test/test_reqres.cpp
pablogs9 and others added 2 commits September 28, 2021 11:48
Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>
Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

Static memory analysis

Default configuration

MTU: 512 B
Input buffer size: 2048 B
Input history: 4
Output buffer size: 2048 B
Output history: 4

Entity Qty Size per unit
Context 2 5600 B
Topic 8 56 B
Service 4 168 B
Client 4 168 B
Subscription 4 168 B
Publisher 4 184 B
Node 4 56 B
Static input buffer 8 2136 B

TOTAL: 31492 B

1 similar comment
@github-actions

Copy link
Copy Markdown

Static memory analysis

Default configuration

MTU: 512 B
Input buffer size: 2048 B
Input history: 4
Output buffer size: 2048 B
Output history: 4

Entity Qty Size per unit
Context 2 5600 B
Topic 8 56 B
Service 4 168 B
Client 4 168 B
Subscription 4 168 B
Publisher 4 184 B
Node 4 56 B
Static input buffer 8 2136 B

TOTAL: 31492 B

@codecov-commenter

codecov-commenter commented Sep 28, 2021

Copy link
Copy Markdown

Codecov Report

❗ No coverage uploaded for pull request base (galactic@b996df1). Click here to learn what that means.
The diff coverage is n/a.

❗ Current head b9a703f differs from pull request most recent head 4c342c2. Consider uploading reports for the commit 4c342c2 to get more accurate results
Impacted file tree graph

@@             Coverage Diff             @@
##             galactic     #165   +/-   ##
===========================================
  Coverage            ?   49.75%           
===========================================
  Files               ?       42           
  Lines               ?     1618           
  Branches            ?      319           
===========================================
  Hits                ?      805           
  Misses              ?      614           
  Partials            ?      199           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b996df1...4c342c2. Read the comment docs.

@github-actions

Copy link
Copy Markdown

Static memory analysis

Default configuration

MTU: 512 B
Input buffer size: 2048 B
Input history: 4
Output buffer size: 2048 B
Output history: 4

Entity Qty Size per unit
Context 2 5600 B
Topic 8 56 B
Service 4 168 B
Client 4 168 B
Subscription 4 168 B
Publisher 4 184 B
Node 4 56 B
Static input buffer 8 2136 B

TOTAL: 31492 B

@pablogs9
pablogs9 requested a review from Acuadros95 September 28, 2021 10:27
@github-actions

Copy link
Copy Markdown

Static memory analysis

Default configuration

MTU: 512 B
Input buffer size: 2048 B
Input history: 4
Output buffer size: 2048 B
Output history: 4

Entity Qty Size per unit
Context 2 5600 B
Topic 8 56 B
Service 4 168 B
Client 4 168 B
Subscription 4 168 B
Publisher 4 184 B
Node 4 56 B
Static input buffer 8 2136 B

TOTAL: 31492 B

@github-actions

Copy link
Copy Markdown

Static memory analysis

Default configuration

MTU: 512 B
Input buffer size: 2048 B
Input history: 4
Output buffer size: 2048 B
Output history: 4

Entity Qty Size per unit
Context 2 5600 B
Topic 8 56 B
Service 4 168 B
Client 4 168 B
Subscription 4 168 B
Publisher 4 184 B
Node 4 56 B
Static input buffer 8 2136 B

TOTAL: 31492 B

Co-authored-by: Pablo Garrido <pablogs9@gmail.com>
@github-actions

Copy link
Copy Markdown

Static memory analysis

Default configuration

MTU: 512 B
Input buffer size: 2048 B
Input history: 4
Output buffer size: 2048 B
Output history: 4

Entity Qty Size per unit
Context 2 5600 B
Topic 8 56 B
Service 4 168 B
Client 4 168 B
Subscription 4 168 B
Publisher 4 184 B
Node 4 56 B
Static input buffer 8 2136 B

TOTAL: 31492 B

@pablogs9
pablogs9 merged commit b1531c7 into galactic Sep 28, 2021
@pablogs9
pablogs9 deleted the feature/qos_buffers branch September 28, 2021 12:57
mergify Bot pushed a commit that referenced this pull request Sep 28, 2021
* Initial

* Update

* Uncrustify

* Fixes

* Tests pubsub

* Add two subs test

* Uncrustify

* Initial reqres

* Adding complete req res tests

* Uncrustify

* Use absolute time reference

* Avoid future data

* Speedup tests

* Update

* Update

* Pub/sub in best effort

* Fix

* Revert "Pub/sub in best effort"

This reverts commit 9f46d80.

* Revert "Fix"

This reverts commit cb7a130.

* Major review of rmw_wait

* Uncrustify

* Adapt Cmake

* client branch

* Update

* Update

* Uncrustify

* Update rmw_microxrcedds_c/CMakeLists.txt

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>

* Update rmw_microxrcedds_c/src/config.h.in

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>

* Fix on_topic callback

* Fix timeout handling

* Exit if deserialize fails

* Update .github/workflows/ci.yml

Co-authored-by: Pablo Garrido <pablogs9@gmail.com>

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>
Co-authored-by: Antonio cuadros <acuadros1995@gmail.com>
(cherry picked from commit b1531c7)

# Conflicts:
#	rmw_microxrcedds_c/src/types.h
mergify Bot pushed a commit that referenced this pull request Sep 28, 2021
* Initial

* Update

* Uncrustify

* Fixes

* Tests pubsub

* Add two subs test

* Uncrustify

* Initial reqres

* Adding complete req res tests

* Uncrustify

* Use absolute time reference

* Avoid future data

* Speedup tests

* Update

* Update

* Pub/sub in best effort

* Fix

* Revert "Pub/sub in best effort"

This reverts commit 9f46d80.

* Revert "Fix"

This reverts commit cb7a130.

* Major review of rmw_wait

* Uncrustify

* Adapt Cmake

* client branch

* Update

* Update

* Uncrustify

* Update rmw_microxrcedds_c/CMakeLists.txt

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>

* Update rmw_microxrcedds_c/src/config.h.in

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>

* Fix on_topic callback

* Fix timeout handling

* Exit if deserialize fails

* Update .github/workflows/ci.yml

Co-authored-by: Pablo Garrido <pablogs9@gmail.com>

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>
Co-authored-by: Antonio cuadros <acuadros1995@gmail.com>
(cherry picked from commit b1531c7)

# Conflicts:
#	rmw_microxrcedds_c/test/test_pubsub.cpp
#	rmw_microxrcedds_c/test/test_reqres.cpp
@mergify

mergify Bot commented Sep 28, 2021

Copy link
Copy Markdown
Contributor

Command backport main foxy: success

Backports have been created

pablogs9 added a commit that referenced this pull request Sep 28, 2021
* RMW QoS incoming buffer handling (#165)

* Initial

* Update

* Uncrustify

* Fixes

* Tests pubsub

* Add two subs test

* Uncrustify

* Initial reqres

* Adding complete req res tests

* Uncrustify

* Use absolute time reference

* Avoid future data

* Speedup tests

* Update

* Update

* Pub/sub in best effort

* Fix

* Revert "Pub/sub in best effort"

This reverts commit 9f46d80.

* Revert "Fix"

This reverts commit cb7a130.

* Major review of rmw_wait

* Uncrustify

* Adapt Cmake

* client branch

* Update

* Update

* Uncrustify

* Update rmw_microxrcedds_c/CMakeLists.txt

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>

* Update rmw_microxrcedds_c/src/config.h.in

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>

* Fix on_topic callback

* Fix timeout handling

* Exit if deserialize fails

* Update .github/workflows/ci.yml

Co-authored-by: Pablo Garrido <pablogs9@gmail.com>

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>
Co-authored-by: Antonio cuadros <acuadros1995@gmail.com>
(cherry picked from commit b1531c7)

# Conflicts:
#	rmw_microxrcedds_c/src/types.h

* Fix conflict

* Update

Co-authored-by: Pablo Garrido <pablogs9@gmail.com>
Acuadros95 added a commit that referenced this pull request Sep 28, 2021
* RMW QoS incoming buffer handling (#165)

* Initial

* Update

* Uncrustify

* Fixes

* Tests pubsub

* Add two subs test

* Uncrustify

* Initial reqres

* Adding complete req res tests

* Uncrustify

* Use absolute time reference

* Avoid future data

* Speedup tests

* Update

* Update

* Pub/sub in best effort

* Fix

* Revert "Pub/sub in best effort"

This reverts commit 9f46d80.

* Revert "Fix"

This reverts commit cb7a130.

* Major review of rmw_wait

* Uncrustify

* Adapt Cmake

* client branch

* Update

* Update

* Uncrustify

* Update rmw_microxrcedds_c/CMakeLists.txt

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>

* Update rmw_microxrcedds_c/src/config.h.in

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>

* Fix on_topic callback

* Fix timeout handling

* Exit if deserialize fails

* Update .github/workflows/ci.yml

Co-authored-by: Pablo Garrido <pablogs9@gmail.com>

Co-authored-by: Antonio Cuadros <49162117+Acuadros95@users.noreply.github.com>
Co-authored-by: Antonio cuadros <acuadros1995@gmail.com>
(cherry picked from commit b1531c7)

# Conflicts:
#	rmw_microxrcedds_c/test/test_pubsub.cpp
#	rmw_microxrcedds_c/test/test_reqres.cpp

* resolve conflicts

* Fix

* fix

* Update timeout

* Fix time

* Fix

* Fix tests

* Fix time unit

Co-authored-by: Pablo Garrido <pablogs9@gmail.com>
Co-authored-by: Antonio cuadros <acuadros1995@gmail.com>
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