Siarhei Fedartsou
aadc088084
Fix distance calculation consistency. ( #6315 )
...
Consolidate great circle distance calculations to use cheap ruler library.
2022-08-19 22:31:40 +01:00
Siarhei Fedartsou
51a8486375
Fix performance issues after migration to sol2 3.3.0 ( #6304 )
...
* Fix performance issues after migration to sol2 3.3.0
2022-08-15 23:10:56 +01:00
Siarhei Fedartsou
00816722dd
Configure Undefined Behaviour Sanitizer ( #6290 )
2022-08-01 22:40:26 +01:00
Siarhei Fedartsou
4e8ee288d9
Migrate to C++17. Update sol2 to 3.3.0. ( #6279 )
...
* Migrate to C++17. Update sol2 to 3.3.0.
2022-07-31 00:56:17 +01:00
Siarhei Fedartsou
06b1b980bb
Enable even more clang-tidy checks ( #6273 )
2022-07-04 21:46:59 +01:00
Siarhei Fedartsou
3d2db20777
Enable more clang-tidy checks. ( #6270 )
...
* Enable more clang-tidy checks
2022-06-30 14:32:12 +01:00
Siarhei Fedartsou
59953172e8
Configure clang-tidy job on CI ( #6261 )
2022-06-28 00:14:28 +01:00
Michael Bell
50f5a753ea
Increase PackedOSMIDs size to 34 bits
...
OSM node 2^33 was created in early April 2021. This and all
subsequently created IDs will be overflowing OSRM node storage
which only support 33 bit IDs.
Bump the number of bits to 34 to double node ID capacity. This
is a breaking change to the data format as it alters the layout
of .osrm.nbg_nodes.
2021-04-24 23:41:02 +01:00
themylogin
b0b8069ab0
clang-format
2021-01-27 13:12:20 +01:00
themylogin
d9d873903f
Account merged edges when processing turn legs
2021-01-27 10:53:48 +01:00
Michael Bell
5266ac1635
Add support for multiple via-way restrictions ( #5907 )
...
Currently OSRM only supports turn restrictions with a single via-node or one
via-way. OSM allows for multiple via-ways to represent longer and more
complex restrictions.
This PR extends the use of duplicate nodes for representng via-way turn
restrictions to also support multi via-way restrictions. Effectively, this
increases the edge-based graph size by the number of edges in multi via-way
restrictions. However, given the low number of these restrictions it
has little effect on total graph size.
In addition, we add a new step in the extraction phase that constructs
a restriction graph to support more complex relationships between restrictions,
such as nested restrictions and overlapping restrictions.
2020-12-20 13:59:57 -08:00
Desone Burns II
0e10b94d38
Merge branch 'master' of github.com:Project-OSRM/osrm-backend into HEAD
2020-12-01 19:24:11 -07:00
Daniel Patterson
50d9632ed7
Upgrade formatting to clang-format 10 ( #5895 )
...
* Update formatting tools to clang-format-10
* Reformat using clang-format-10.0.09
2020-11-26 07:21:39 -08:00
Desone Burns II
cf13a9714d
clang-format-3.8 changed files
2020-11-24 08:06:26 -07:00
Desone Burns II
43b920bfb5
Merge branch 'master' of https://github.com/Project-OSRM/osrm-backend into upgrade_libsol2_v2.20.6
2020-11-18 17:11:02 -07:00
Desone Burns II
deacc8fb5c
Update to sol2 v2.20.6
2020-11-18 17:01:43 -07:00
Michael Bell
96acdaf0d5
Fix osrm-contract, tests, on Windows
...
As part of graph contraction, node renumbering leads to
in-place permuting of graph state, including boolean vector elements.
std::vector<bool> returns proxy objects when referencing individual
bits. To correctly swap bool elements using MSVC, we need to explicitly
apply std::vector<bool>::swap.
Making this change fixes osrm-contract on Windows.
We also correct failing tests and other undefined behaviours
(mainly iterator access outside boundaries) highlighted by MSVC.
2020-11-15 14:22:26 +00:00
Jay Zhang
17eb39d0a9
fix: clangformat
2020-10-26 01:19:17 +00:00
Jay Zhang
7d28b7aa3a
feat: unify turn_penalties_index dump same with turn_weight_penalties and turn_duration_penalties
2020-10-23 09:38:56 +00:00
Denis Chaplygin
2d0b2ca987
Removed STXXL support.
2020-08-20 11:54:02 +03:00
Tomonobu Saito
9da6cf8764
add: comment for RasterCache class
2019-11-13 11:01:07 +09:00
Tomonobu Saito
ee177efe41
fix: remove unused include / add const for necessity portion
2019-11-08 16:15:38 +09:00
Tomonobu Saito
fd0f1b60bb
fix by revier comments
2019-11-06 11:06:29 +09:00
Tomonobu Saito
17f32f4ca1
fix coding format
2019-10-09 13:35:19 +09:00
Tomonobu Saito
542c3ba872
Add singletone class RasterCache to handle global cache data.
2019-10-09 13:02:59 +09:00
Tomonobu Saito
f36707d1fb
revert file mode to 664
2019-10-04 17:39:05 +09:00
Tomonobu Saito
a587b14006
destruct static vector and unorderd_map when last RasterContainer is destructed.
2019-10-04 17:30:35 +09:00
Tomonobu Saito
f9ee74d78e
Add x range check to avoid data corruption.
2019-10-04 16:47:31 +09:00
Tomonobu Saito
eef072234e
update delim chars
2019-10-04 15:14:20 +09:00
Tomonobu Saito
432d49e23d
bugfix: support multiple delimitor.
2019-10-04 13:50:13 +09:00
Tomonobu Saito
e4aaf07879
remove unused lines
2019-10-03 17:24:42 +09:00
Tomonobu Saito
d316ff9d41
Improvement of raster source loading to reduce consumed memory size.
2019-10-03 16:44:27 +09:00
Tomonobu.Saito (Desktop PC)
d8d9ac8686
Add assert to check memory allocation
2019-10-02 15:47:16 +09:00
Lev Dragunov
8b45ff7a18
Store metadata about original OSM data, and return it in the API response, if available.
2019-01-30 15:31:56 -08:00
Daniel Patterson
81bc2f41a6
When matching, ignore 'is_startpoint' propert, snap to any edge ( #5297 )
...
Includes all edges in the rtree, but adds an `is_startpoint` flag to each. Most plugin behaviour remains unchanged (non-startpoint edges aren't used as snapping candidates), but for map matching, we allow snapping to any edge. This fixes map-matching across previously non-is_startpoint edges, like ferries, private service roads, and a few others.
2018-12-13 17:10:32 -07:00
Daniel Patterson
498259b220
Replace dynamic distance calculation for table plugin with pre-calculated distances on shortcuts, avoiding unpacking cost.
...
Adds approx 10% to total data size. Speeds up large table requests by 2 orders of magnitude.
Co-authored-by: Kajari Ghosh <ghoshkaj@gmail.com>
2018-10-30 15:41:06 -07:00
Michael Krasnyk
fd9bebbfa7
Add EBG node durations
2018-04-28 08:59:18 +02:00
Michael Krasnyk
8d8042ebae
Use ranges with fixed types
2018-04-09 11:05:01 +02:00
Kajari Ghosh
be123cd72f
Use ranges in datafacade instead of vectors
...
Range type must use immutable references due to a
regression in `boost::any_range`.
References:
https://svn.boost.org/trac10/ticket/10493
https://stackoverflow.com/questions/42427395/boostany-range-with-optimization-level-o2-causes-crash/42427662
2018-04-09 11:05:01 +02:00
Patrick Niklaus
cb4586ebee
Make use of the view factory in the data facade
2018-04-04 12:38:40 +02:00
Patrick Niklaus
c0dd5d7c76
Fix formating
2018-03-26 11:02:34 +00:00
Patrick Niklaus
a542da3678
Remove old io::FileWrite serialization code
2018-03-26 11:02:34 +00:00
Patrick Niklaus
c410c200bd
Port .cnbg file to tar format
2018-03-26 11:02:33 +00:00
Patrick Niklaus
8152dcfb4c
Port .ramIndex to tar file and mmap .fileIndex directly
2018-03-26 11:02:33 +00:00
Patrick Niklaus
bed53f5fd5
Remove timestamp file
2018-03-26 11:02:31 +00:00
Patrick Niklaus
2b010fc6f3
Port .enw file to tar format
2018-03-26 11:02:04 +00:00
Patrick Niklaus
b8260e44fa
Port .names file to tar
2018-03-26 11:02:04 +00:00
Patrick Niklaus
f407afa694
Move .osrm file to tar format
2018-03-26 11:02:04 +00:00
Patrick Niklaus
06f28ffd34
Add BufferWriter/BufferReader and simplify interface for ConditionalRestrictions
2018-03-26 11:02:04 +00:00
Patrick Niklaus
990e411361
Port turn duration penalties to tar
2018-03-26 11:02:04 +00:00