Skip to content

[20180] TCP Client&Server Participant Decision-Making (backport #4277) #4384

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

Merged
merged 2 commits into from
Feb 29, 2024

Conversation

mergify[bot]
Copy link
Contributor

@mergify mergify bot commented Feb 14, 2024

This is an automatic backport of pull request #4277 done by Mergify.
Cherry-pick of 709b140 has failed:

On branch mergify/bp/2.12.x/pr-4277
Your branch is up to date with 'origin/2.12.x'.

You are currently cherry-picking commit 709b1406b.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   src/cpp/fastdds/publisher/DataWriterImpl.cpp
	modified:   src/cpp/fastdds/publisher/DataWriterImpl.hpp
	modified:   src/cpp/rtps/attributes/RTPSParticipantAttributes.cpp
	modified:   src/cpp/rtps/transport/TCPChannelResource.cpp
	modified:   src/cpp/rtps/transport/TCPChannelResourceBasic.cpp
	modified:   src/cpp/rtps/transport/TCPSenderResource.hpp
	modified:   src/cpp/rtps/transport/TCPTransportInterface.h
	modified:   src/cpp/rtps/transport/tcp/RTCPMessageManager.cpp
	modified:   test/blackbox/api/dds-pim/PubSubReader.hpp
	modified:   test/blackbox/api/dds-pim/PubSubWriter.hpp
	modified:   test/blackbox/api/fastrtps_deprecated/PubSubReader.hpp
	modified:   test/blackbox/api/fastrtps_deprecated/PubSubWriter.hpp
	modified:   test/blackbox/common/BlackboxTests.hpp
	modified:   test/blackbox/common/BlackboxTestsTransportCustom.cpp
	modified:   test/blackbox/utils/data_generators.cpp
	modified:   test/unittest/dds/participant/ParticipantTests.cpp
	modified:   test/unittest/transport/TCPv4Tests.cpp

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   src/cpp/rtps/transport/TCPTransportInterface.cpp
	both modified:   test/blackbox/common/BlackboxTestsTransportTCP.cpp

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally


Mergify commands and options

More conditions and actions can be found in the documentation.

You can also trigger Mergify actions by commenting on this pull request:

  • @Mergifyio refresh will re-evaluate the rules
  • @Mergifyio rebase will rebase this PR on its base branch
  • @Mergifyio update will merge the base branch into this PR
  • @Mergifyio backport <destination> will backport this PR on <destination> branch

Additionally, on Mergify dashboard you can:

  • look at your merge queues
  • generate the Mergify configuration with the config editor.

Finally, you can contact us on https://mergify.com

* Refs #20180: Spelling fix

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Create function to check pending_logical_ports

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Add new TCP Connection type

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Add new method to enable TCP channel after connection in LARGE DATA

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Refactor OpenOutputChannel method

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Include LARGE DATA logic in SocketAccepted method

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Include LARGE DATA logic in processBindConnectionRequest method

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Add new TCP connection and methods SECURITY

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Add SECURITY support to OpenOutputChannel

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Include LARGE DATA logic in SecureSocketAccepted method

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Bugfix setting environment variable in tests

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Add multicast IPv6 to LARGE_DATA locator

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Add TCP test in LARGE_DATA Topology

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Clean code & Uncrustify

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Modified participant populated test

Signed-off-by: Jesus Perez <[email protected]>

* Refs #20180: Add new api to update channels

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Refactor OpenOutputChannel with new channel map

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Refactor bind_socket with new channel map

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Refactor SocketAccepted with new channel map (Revert to old behavior)

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Refactor CloseOutputChannel to support cases with new channel map

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Update Secure channel logic with new channel map

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Use same IPv6 as defaultMetatrafficMulticast

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Refactor using locator inside sender resource instead of channel

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Data races associated

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Apply suggestions to tests

Signed-off-by: Jesus Perez <[email protected]>

* Refs #20180: Add OpenLogicalPortRequest scenario before Bind Response is processed

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180. Remove unnecessary methods.

Signed-off-by: Miguel Company <[email protected]>

* Refs #20180. Early exit when logical_port is 0.

Signed-off-by: Miguel Company <[email protected]>

* Refs #20180. Refactor to avoid lambda.

Signed-off-by: Miguel Company <[email protected]>

* Refs #20180. Minor changes.

Signed-off-by: Miguel Company <[email protected]>

* Refs #20180. Simplify with WanToLanLocator.

Signed-off-by: Miguel Company <[email protected]>

* Refs #20180: Apply suggestions

Signed-off-by: cferreiragonz <[email protected]>

* Revert "Refs #20180: Add new TCP Connection type"

This reverts commit 4b4eb4153553cfdbf007896ff524d3e904f722c9.

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Remove unnecessary lock

Signed-off-by: cferreiragonz <[email protected]>

* Revert "Refs #20180: Add new TCP connection and methods SECURITY"

This reverts commit c69d92e56dcfab3c3c7287145a7a93e57947d3cb.

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180: Fix test (file descriptors limit)

Signed-off-by: Jesus Perez <[email protected]>

* Refs #20180: Uncrustify

Signed-off-by: Jesus Perez <[email protected]>

* Refs #20180. Fix port comparison.

Signed-off-by: Miguel Company <[email protected]>

Co-authored-by: Carlos Ferreira González <[email protected]>

* Refs #20180: Fix double lock and update old test with current behavior

Signed-off-by: Jesus Perez <[email protected]>

* Refs #20180: Apply suggestions

Signed-off-by: Jesus Perez <[email protected]>

* Refs #20180: Fix windows test build

Signed-off-by: Jesus Perez <[email protected]>

* Refs #20180: Apply test suggestions

Signed-off-by: Jesus Perez <[email protected]>

* Refs #20180: Bugfix with cv in receiver_resources_ destruction

Signed-off-by: cferreiragonz <[email protected]>

* Refs #20180. Delete participant on failing ParticipantTests.ParticipantCreationWithBuiltinTransport

Signed-off-by: Miguel Company <[email protected]>

* Refs #20180. Do not use non_blocking_send on TCP transport for LARGE_DATA.

Signed-off-by: Miguel Company <[email protected]>

---------

Signed-off-by: cferreiragonz <[email protected]>
Signed-off-by: Jesus Perez <[email protected]>
Signed-off-by: Miguel Company <[email protected]>
Co-authored-by: Jesus Perez <[email protected]>
Co-authored-by: Miguel Company <[email protected]>
(cherry picked from commit 709b140)

# Conflicts:
#	src/cpp/rtps/transport/TCPTransportInterface.cpp
#	test/blackbox/common/BlackboxTestsTransportTCP.cpp
@mergify mergify bot added the conflicts Backport PR wich git cherry pick failed label Feb 14, 2024
@Mario-DL Mario-DL added this to the v2.12.2 milestone Feb 14, 2024
Signed-off-by: cferreiragonz <[email protected]>
@cferreiragonz cferreiragonz added ci-pending PR which CI is running and removed conflicts Backport PR wich git cherry pick failed labels Feb 16, 2024
@elianalf
Copy link
Contributor

@richiprosima please test this

@elianalf elianalf added the ready-to-merge Ready to be merged. CI and changes have been reviewed and approved. label Feb 27, 2024
@EduPonz EduPonz removed the ci-pending PR which CI is running label Feb 29, 2024
@EduPonz EduPonz merged commit 6fbb614 into 2.12.x Feb 29, 2024
@EduPonz EduPonz deleted the mergify/bp/2.12.x/pr-4277 branch February 29, 2024 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-to-merge Ready to be merged. CI and changes have been reviewed and approved.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants