Skip to content

Commit d662e8e

Browse files
authored
Discovery Server clients always behave as super clients (#6272)
* In DS now clients behave like super_clients Signed-off-by: Raül <raulojeda@eprosima.com> * Uncrustify Signed-off-by: Raül <raulojeda@eprosima.com> * Check in match_new_server_ if it client or super_client instead of just super_client Signed-off-by: Raül <raulojeda@eprosima.com> * Fix comment explanation Signed-off-by: Raül <raulojeda@eprosima.com> * Modify variable name in match_new_server_ header check if it is client or super_client Signed-off-by: Raül <raulojeda@eprosima.com> * Add feature to versions.md Signed-off-by: Raül <raulojeda@eprosima.com> * Uncrustify Signed-off-by: Raül <raulojeda@eprosima.com> * Remove discovery_server tests from CI Signed-off-by: Raül <raulojeda@eprosima.com> * Fix memory bug Signed-off-by: Raül <raulojeda@eprosima.com> * For all discovered clients, we create DiscoveryParticipantChangeData with is_client_ = false and is_superclient_ = true Signed-off-by: Raül <raulojeda@eprosima.com> * Uncrustify Signed-off-by: Raül <raulojeda@eprosima.com> * Remove is_client altogether Signed-off-by: Raül <raulojeda@eprosima.com> * Uncrustify Signed-off-by: Raül <raulojeda@eprosima.com> * More uncrustify Signed-off-by: Raül <raulojeda@eprosima.com> * Rename internal super_client to client Signed-off-by: Raül <raulojeda@eprosima.com> * Apply revision Signed-off-by: Raül <raulojeda@eprosima.com> * Uncrustify Signed-off-by: Raül <raulojeda@eprosima.com> * Fix check_server_discovery_conditions wrong participant bug Signed-off-by: Raül <raulojeda@eprosima.com> --------- Signed-off-by: Raül <raulojeda@eprosima.com>
1 parent b7ecf6c commit d662e8e

17 files changed

+79
-384
lines changed

.github/workflows/reusable-sanitizers-ci.yml

Lines changed: 0 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -250,108 +250,6 @@ jobs:
250250
--output-file $GITHUB_STEP_SUMMARY \
251251
--sanitizer asan
252252
253-
asan_discovery_server_test:
254-
if: ${{ inputs.run_asan_discovery_server == true }}
255-
needs: asan_fastdds_build
256-
runs-on: ubuntu-22.04
257-
steps:
258-
- name: Free disk space
259-
uses: eProsima/eProsima-CI/ubuntu/free_disk_space@v0
260-
261-
- name: Download build artifacts
262-
uses: eProsima/eProsima-CI/external/download-artifact@v0
263-
with:
264-
name: build_artifacts_fastdds_asan_${{ inputs.label }}
265-
path: ${{ github.workspace }}
266-
267-
- name: Install Fix Python version
268-
uses: eProsima/eProsima-CI/external/setup-python@v0
269-
with:
270-
python-version: '3.11'
271-
272-
- name: Get minimum supported version of CMake
273-
uses: eProsima/eProsima-CI/external/get-cmake@v0
274-
with:
275-
cmakeVersion: '3.22.6'
276-
277-
- name: Install apt packages
278-
uses: eProsima/eProsima-CI/ubuntu/install_apt_packages@v0
279-
with:
280-
packages: curl grep libasio-dev libtinyxml2-dev python3 python3-pip software-properties-common wget
281-
282-
- name: Install colcon
283-
uses: eProsima/eProsima-CI/ubuntu/install_colcon@v0
284-
285-
- name: Install Python dependencies
286-
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0
287-
with:
288-
packages: vcstool setuptools gcovr tomark xmltodict jsondiff pandas psutil
289-
290-
- name: Setup CCache
291-
uses: eProsima/eProsima-CI/external/setup-ccache-action@v0
292-
if: ${{ !always() }}
293-
with:
294-
api_token: ${{ secrets.GITHUB_TOKEN }}
295-
296-
- name: Get Discovery Server branch
297-
id: get_discovery_server_branch
298-
uses: eProsima/eProsima-CI/ubuntu/get_related_branch_from_repo@v0
299-
with:
300-
remote_repository: eProsima/Discovery-Server
301-
fallback_branch: ${{ inputs.discovery_server_ref }}
302-
303-
- name: Download Discovery Server repo
304-
uses: eProsima/eProsima-CI/external/checkout@v0
305-
with:
306-
repository: eProsima/Discovery-Server
307-
path: src/discovery-server
308-
ref: ${{ steps.get_discovery_server_branch.outputs.deduced_branch }}
309-
310-
- name: Show .meta file
311-
id: show_meta
312-
run: |
313-
cat ${{ github.workspace }}/src/fastdds/.github/workflows/config/asan.meta
314-
315-
- name: Colcon build
316-
continue-on-error: false
317-
uses: eProsima/eProsima-CI/ubuntu/colcon_build@v0
318-
with:
319-
colcon_meta_file: ${{ github.workspace }}/src/fastdds/.github/workflows/config/asan.meta
320-
colcon_build_args: ${{ inputs.colcon_build_args }}
321-
cmake_args: ${{ inputs.cmake_args }}
322-
cmake_args_default: ''
323-
cmake_build_type: 'Debug'
324-
workspace: ${{ github.workspace }}
325-
workspace_dependencies: ''
326-
327-
- name: Colcon test
328-
id: test
329-
continue-on-error: true
330-
uses: eProsima/eProsima-CI/ubuntu/colcon_test@v0
331-
with:
332-
colcon_args_default: ''
333-
colcon_test_args: ${{ inputs.colcon_test_args }}
334-
colcon_test_args_default: '--event-handlers=console_direct+ --return-code-on-test-failure'
335-
ctest_args: ${{ inputs.ctest_args }}
336-
ctest_args_default: '--timeout 300 --label-exclude "xfail"'
337-
packages_names: discovery-server
338-
workspace: ${{ github.workspace }}
339-
workspace_dependencies: ''
340-
test_report_artifact: ${{ format('test_report_{0}_{1}', inputs.label, github.job) }}
341-
342-
- name: Report sanitizer errors
343-
run: |
344-
bash src/fastdds/.github/workflows/utils/specific_errors_filter.sh \
345-
"==ERROR:" \
346-
log/latest_test/discovery-server/stdout_stderr.log \
347-
_tmp_specific_error_file.log
348-
349-
python3 src/fastdds/.github/workflows/utils/log_parser.py \
350-
--log-file log/latest_test/discovery-server/stdout_stderr.log \
351-
--specific-error-file _tmp_specific_error_file.log \
352-
--output-file $GITHUB_STEP_SUMMARY \
353-
--sanitizer=asan
354-
355253
tsan_fastdds_test:
356254
if: ${{ inputs.run_tsan_fastdds == true }}
357255
runs-on: ubuntu-22.04

.github/workflows/reusable-ubuntu-ci.yml

Lines changed: 0 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -639,109 +639,6 @@ jobs:
639639
cmake_build_type: ${{ matrix.cmake-build-type }}
640640
workspace: ${{ github.workspace }}
641641

642-
fastdds_discovery_server_test:
643-
needs: fastdds_build
644-
runs-on: ${{ inputs.os-image }}
645-
strategy:
646-
fail-fast: false
647-
matrix:
648-
cmake-build-type:
649-
- 'RelWithDebInfo'
650-
steps:
651-
- name: Free disk space
652-
uses: eProsima/eProsima-CI/ubuntu/free_disk_space@v0
653-
654-
- name: Download build artifacts
655-
uses: eProsima/eProsima-CI/external/download-artifact@v0
656-
with:
657-
name: fastdds_build_${{ inputs.label }}
658-
path: ${{ github.workspace }}
659-
660-
- name: Install Fix Python version
661-
uses: eProsima/eProsima-CI/external/setup-python@v0
662-
with:
663-
python-version: '3.11'
664-
665-
- name: Get minimum supported version of CMake
666-
uses: eProsima/eProsima-CI/external/get-cmake@v0
667-
with:
668-
cmakeVersion: '3.22.6'
669-
670-
- name: Install apt packages
671-
uses: eProsima/eProsima-CI/ubuntu/install_apt_packages@v0
672-
with:
673-
packages: libasio-dev libtinyxml2-dev libssl-dev
674-
675-
- name: Install colcon
676-
uses: eProsima/eProsima-CI/ubuntu/install_colcon@v0
677-
678-
- name: Install Python dependencies
679-
uses: eProsima/eProsima-CI/ubuntu/install_python_packages@v0
680-
with:
681-
packages: vcstool xmlschema xmltodict==0.13.0 jsondiff==2.0.0 pandas==1.5.2 psutil
682-
683-
- name: Setup CCache
684-
uses: eProsima/eProsima-CI/external/setup-ccache-action@v0
685-
if: ${{ inputs.use-ccache == true }}
686-
with:
687-
api_token: ${{ secrets.GITHUB_TOKEN }}
688-
689-
- name: Get Discovery Server branch
690-
id: get_discovery_server_branch
691-
uses: eProsima/eProsima-CI/ubuntu/get_related_branch_from_repo@v0
692-
with:
693-
remote_repository: eProsima/Discovery-Server
694-
fallback_branch: ${{ env.discovery-server-branch }}
695-
696-
- name: Download Discovery Server repo
697-
uses: eProsima/eProsima-CI/external/checkout@v0
698-
with:
699-
repository: eProsima/Discovery-Server
700-
path: src/discovery_server
701-
ref: ${{ steps.get_discovery_server_branch.outputs.deduced_branch }}
702-
703-
- name: Fetch Fast DDS CI dependencies
704-
uses: eProsima/eProsima-CI/ubuntu/vcs_import@v0
705-
with:
706-
vcs_repos_file: ${{ github.workspace }}/src/fastdds/.github/workflows/config/fastdds_test.repos
707-
destination_workspace: src
708-
skip_existing: 'true'
709-
710-
- name: Colcon build
711-
continue-on-error: false
712-
uses: eProsima/eProsima-CI/ubuntu/colcon_build@v0
713-
with:
714-
colcon_meta_file: ${{ github.workspace }}/src/fastdds/.github/workflows/config/fastdds_build.meta ${{ github.workspace }}/src/fastdds/.github/workflows/config/discovery_server.meta
715-
colcon_build_args: ${{ inputs.colcon-args }}
716-
cmake_args: '${{ env.security-cmake-flag }} ${{ inputs.cmake-args }}'
717-
cmake_args_default: ${{ env.colcon-build-default-cmake-args }}
718-
cmake_build_type: ${{ matrix.cmake-build-type }}
719-
workspace: ${{ github.workspace }}
720-
721-
- name: Colcon test
722-
id: discovery_server_test
723-
if: ${{ inputs.run-tests == true }}
724-
uses: eProsima/eProsima-CI/ubuntu/colcon_test@v0
725-
with:
726-
colcon_meta_file: ${{ github.workspace }}/src/fastdds/.github/workflows/config/discovery_server.meta
727-
colcon_test_args: ${{ inputs.colcon-args }}
728-
colcon_test_args_default: --event-handlers=console_direct+
729-
ctest_args: ${{ inputs.ctest-args }}
730-
packages_names: discovery-server
731-
workspace: ${{ github.workspace }}
732-
workspace_dependencies: ''
733-
test_report_artifact: ${{ format('test_report_{0}_{1}_{2}', inputs.label, github.job, join(matrix.*, '_')) }}
734-
735-
- name: Discovery server test summary
736-
uses: eProsima/eProsima-CI/ubuntu/junit_summary@v0
737-
if: ${{ !cancelled() && inputs.run-tests == true }}
738-
with:
739-
junit_reports_dir: "${{ steps.discovery_server_test.outputs.ctest_results_path }}"
740-
print_summary: 'True'
741-
show_failed: 'True'
742-
show_disabled: 'False'
743-
show_skipped: 'False'
744-
745642
fastdds_alternative_builds:
746643
needs: fastdds_build
747644
runs-on: ${{ inputs.os-image }}

src/cpp/rtps/builtin/BuiltinProtocols.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ bool BuiltinProtocols::initBuiltinProtocols(
104104
return false;
105105

106106
case DiscoveryProtocol::CLIENT:
107+
case DiscoveryProtocol::SUPER_CLIENT:
107108
mp_PDP = new fastdds::rtps::PDPClient(this, allocation);
108109
break;
109110

@@ -118,10 +119,6 @@ bool BuiltinProtocols::initBuiltinProtocols(
118119
break;
119120
#endif // if HAVE_SQLITE3
120121

121-
case DiscoveryProtocol::SUPER_CLIENT:
122-
mp_PDP = new fastdds::rtps::PDPClient(this, allocation, true);
123-
break;
124-
125122
default:
126123
EPROSIMA_LOG_ERROR(RTPS_PDP, "Unknown DiscoveryProtocol specified.");
127124
return false;

0 commit comments

Comments
 (0)