Skip to content
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

Upgrade Boost to 1.70, fix inefficient connection handling #6113

Merged
merged 2 commits into from
Sep 30, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
163 changes: 82 additions & 81 deletions .github/workflows/osrm-backend.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ env:

jobs:
format-taginfo-docs:
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v2
with:
node-version: 10
node-version: 12
- name: Enable Node.js cache
uses: actions/cache@v2
with:
Expand All @@ -54,42 +54,42 @@ jobs:
strategy:
matrix:
include:
- name: gcc-7-debug-cov
- name: gcc-9-debug-cov
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Debug
CCOMPILER: gcc-7
CCOMPILER: gcc-9
CUCUMBER_TIMEOUT: 20000
CXXCOMPILER: g++-7
CXXCOMPILER: g++-9
ENABLE_COVERAGE: ON

- name: gcc-7-debug-asan
- name: gcc-9-debug-asan
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Debug
CCOMPILER: gcc-7
CCOMPILER: gcc-9
CUCUMBER_TIMEOUT: 20000
CXXCOMPILER: g++-7
CXXCOMPILER: g++-9
ENABLE_SANITIZER: ON
TARGET_ARCH: x86_64-asan

- name: clang-5.0-debug
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
CUCUMBER_TIMEOUT: 60000

- name: mason-linux-debug-asan
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
Expand All @@ -98,76 +98,76 @@ jobs:

- name: mason-linux-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_MASON: ON

- name: gcc-9-release
- name: gcc-11-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-9
CXXCOMPILER: g++-9
CXXFLAGS: -Wno-cast-function-type
CCOMPILER: gcc-11
CXXCOMPILER: g++-11

- name: gcc-8-release
- name: gcc-10-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-8
CXXCOMPILER: g++-8
CXXFLAGS: -Wno-cast-function-type
CCOMPILER: gcc-10
CXXCOMPILER: g++-10

- name: gcc-7-release
- name: gcc-9-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-7
CXXCOMPILER: g++-7
CCOMPILER: gcc-9
CXXCOMPILER: g++-9
CXXFLAGS: -Wno-cast-function-type

- name: gcc-7-release-i686
- name: gcc-9-release-i686
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-7
CCOMPILER: gcc-9
CFLAGS: "-m32 -msse2 -mfpmath=sse"
CXXCOMPILER: g++-7
CXXCOMPILER: g++-9
CXXFLAGS: "-m32 -msse2 -mfpmath=sse"
TARGET_ARCH: i686

- name: gcc-5-release
- name: gcc-8-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-5
CXXCOMPILER: g++-5
CCOMPILER: gcc-8
CXXCOMPILER: g++-8
CXXFLAGS: -Wno-cast-function-type

- name: gcc-6-release
- name: gcc-7-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-6
CXXCOMPILER: g++-6
CCOMPILER: gcc-7
CXXCOMPILER: g++-7

- name: mason-osx-release-node-10
- name: mason-osx-release-node-12
build_node_package: true
continue-on-error: false
node: 10
node: 12
runs-on: macos-10.15
BUILD_TOOLS: ON
BUILD_TYPE: Release
Expand All @@ -177,10 +177,10 @@ jobs:
ENABLE_ASSERTIONS: ON
ENABLE_MASON: ON

- name: mason-osx-release-node-12
- name: mason-osx-release-node-14
build_node_package: true
continue-on-error: false
node: 12
node: 14
runs-on: macos-10.15
BUILD_TOOLS: ON
BUILD_TYPE: Release
Expand All @@ -190,10 +190,10 @@ jobs:
ENABLE_ASSERTIONS: ON
ENABLE_MASON: ON

- name: mason-osx-release-node-14
- name: mason-osx-release-node-16
build_node_package: true
continue-on-error: false
node: 14
node: 16
runs-on: macos-10.15
BUILD_TOOLS: ON
BUILD_TYPE: Release
Expand All @@ -205,74 +205,75 @@ jobs:

- name: gcc-7-release-shared
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
BUILD_SHARED_LIBS: ON
CCOMPILER: gcc-7
CXXCOMPILER: g++-7

- name: node-14-mason-linux-release
- name: node-12-mason-linux-release
build_node_package: true
continue-on-error: false
node: 14
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-14-mason-linux-debug
- name: node-12-mason-linux-debug
build_node_package: true
continue-on-error: false
node: 14
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-12-mason-linux-release
- name: node-14-mason-linux-release
build_node_package: true
continue-on-error: false
node: 12
runs-on: ubuntu-18.04
node: 14
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-12-mason-linux-debug
- name: node-14-mason-linux-debug
build_node_package: true
continue-on-error: false
node: 12
runs-on: ubuntu-18.04
node: 14
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-10-mason-linux-release

- name: node-16-mason-linux-release
build_node_package: true
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 16
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-10-mason-linux-debug
- name: node-16-mason-linux-debug
build_node_package: true
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 16
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand All @@ -297,7 +298,7 @@ jobs:
continue-on-error: true
# TODO: Use node 'latest' once supported: https://github.com/actions/setup-node/issues/257
node: 16
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand All @@ -309,7 +310,7 @@ jobs:
continue-on-error: true
# TODO: Use node 'latest' once supported: https://github.com/actions/setup-node/issues/257
node: 16
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand All @@ -332,7 +333,7 @@ jobs:
build_node_package: true
continue-on-error: true
node: "lts/*"
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand All @@ -343,7 +344,7 @@ jobs:
build_node_package: true
continue-on-error: true
node: "lts/*"
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand Down Expand Up @@ -410,7 +411,7 @@ jobs:
if [[ "$ENABLE_SANITIZER" == 'ON' ]]; then
# We can only set this after checkout once we know the workspace directory
echo "LSAN_OPTIONS=suppressions=${GITHUB_WORKSPACE}/scripts/ci/leaksanitizer.conf" >> $GITHUB_ENV
echo "LSAN_OPTIONS=print_suppressions=0:suppressions=${GITHUB_WORKSPACE}/scripts/ci/leaksanitizer.conf" >> $GITHUB_ENV
fi
if [[ "${RUNNER_OS}" == "Linux" ]]; then
Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
# Unreleased
- Changes from 5.26.0
- API:
- FIXED: Fix inefficient osrm-routed connection handling [#6113](https://github.com/Project-OSRM/osrm-backend/pull/6113)
- Build:
- CHANGED: Use Github Actions for building container images [#6138](https://github.com/Project-OSRM/osrm-backend/pull/6138)
- CHANGED: Upgrade Boost dependency to 1.70 [#6113](https://github.com/Project-OSRM/osrm-backend/pull/6113)
- CHANGED: Upgrade Ubuntu CI builds to 20.04 [#6119](https://github.com/Project-OSRM/osrm-backend/pull/6119)

# 5.26.0
- Changes from 5.25.0
Expand Down
6 changes: 3 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")

if(ENABLE_MASON)
# versions in use
set(MASON_BOOST_VERSION "1.65.1")
set(MASON_BOOST_VERSION "1.73.0")
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Upgrade Mason Boost to 1.73 as this is the first version >= 1.70 Mason provides that has all the libraries OSRM needs.

set(MASON_EXPAT_VERSION "2.2.0")
set(MASON_LUA_VERSION "5.2.4")
set(MASON_BZIP2_VERSION "1.0.6")
Expand Down Expand Up @@ -521,7 +521,7 @@ if(ENABLE_MASON)
include_directories(SYSTEM ${CMAKE_CURRENT_SOURCE_DIR}/third_party/libosmium/include)
else()

find_package(Boost 1.54 REQUIRED COMPONENTS ${BOOST_COMPONENTS})
find_package(Boost 1.70 REQUIRED COMPONENTS ${BOOST_COMPONENTS})
add_dependency_includes(${Boost_INCLUDE_DIRS})

find_package(TBB REQUIRED)
Expand Down Expand Up @@ -697,7 +697,7 @@ install(TARGETS osrm-components DESTINATION bin)
if(BUILD_TOOLS)
message(STATUS "Activating OSRM internal tools")
add_executable(osrm-io-benchmark src/tools/io-benchmark.cpp $<TARGET_OBJECTS:UTIL>)
target_link_libraries(osrm-io-benchmark ${BOOST_BASE_LIBRARIES})
target_link_libraries(osrm-io-benchmark ${BOOST_BASE_LIBRARIES} ${TBB_LIBRARIES})

install(TARGETS osrm-io-benchmark DESTINATION bin)
endif()
Expand Down
Loading