Daniel Patterson
3451d1ec82
Lock access to facade_factory in data_watchdog to avoid accessing destructed object ( #5844 )
...
* Wrap access to facade_factory in a shared lock so it doesn't get changed partway through access which leads to a crash.
2020-09-30 18:45:44 -07:00
Michael Bell
4799b46eeb
Incorrect error message when unable to snap all input coordinates ( #5846 )
...
In cases where we are unable to find a phantom node for an input
coordinate, we return an error indicating which coordinate failed.
This would always refer to the coordinate with index equal to the
number of valid phantom nodes found.
We fix this by instead returning the first index for which a
phantom node could not be found.
2020-09-30 18:44:22 -07:00
Vyacheslav Napadovsky
f545f2293e
Make MMapMemoryAllocator map files in read-only (O_RDONLY) mode. Mapping with O_RDWR will cause copy_up across Docker layers.
2020-09-09 00:51:42 +03:00
Denis Chaplygin
919fe74c40
Fixes signed/unsigned comparision spotted by gcc10.
...
Fixed by moving assertion to the actual point where signed values are used.
2020-06-17 13:18:21 +03:00
Denis Chaplygin
016c77a4de
Flatbuffers is not a boost::optional friendly
2019-10-01 17:26:10 +03:00
Tom Peoples
28895373fb
Fixed flatbufferbuiler copy issues.
...
Compiling under gcc9.1 we get copy issues.
It appears we shouldn't pass builder classes by value, only ref.
2019-10-01 21:54:00 +10:00
Denis Chaplygin
e97ec13064
Formatted the sources
2019-09-17 17:42:52 +03:00
Denis Chaplygin
660c0cc602
Implemented 'skip_waypoints' for the 'Table' service.
2019-09-17 17:42:52 +03:00
Denis Chaplygin
600f48e15a
Implemented 'skip_waypoints' support in 'Route', 'Trip', 'Match' services.
2019-09-17 17:42:52 +03:00
Denis Chaplygin
1b47242a58
Implemented 'skip_waypoints' for the 'Nearest' service.
...
It actually makes no sence, as the only output on the 'Nearest' service
is a list of wypoints. On the other hand it can be used now as a simple
health check.
2019-09-17 17:42:52 +03:00
Denis Chaplygin
10c1b38139
Added new base parameter 'skip_waypoints'
2019-09-17 17:42:52 +03:00
Denis Chaplygin
0be87c73cf
Fixed typo in flatbuffers: longitute -> longitude.
2019-08-26 14:31:51 +03:00
Denis Chaplygin
b8182dd7ff
Replaced 'in' and 'out' at the flatbuffers 'instersection' object
...
with 'in_bearing' and 'out_bearing' to get flatbuffers schema javascript friendly.
Added a cucumber test for flatbuffers support.
2019-08-26 14:03:29 +03:00
Denis Chaplygin
80e1abba0c
Added setting 'data_version' to all flatbuffers response functions.
2019-08-26 11:09:38 +03:00
Denis Chaplygin
97270ae473
Fixed nested offsets inside of the flatbuffers structure
2019-08-26 11:09:38 +03:00
Denis Chaplygin
a9c187c99b
Updated changelog entry
2019-08-26 11:09:38 +03:00
Denis Chaplygin
2a1593fe05
Flatbuffers now uses floats instead of double. We do not use that precision anyway and it make output much smaller.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
73f544d4da
Slightly changed the serialization order.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
889c82516f
Set flatbuffers root type and removed unneded array for rows/cols
2019-08-26 11:08:56 +03:00
Denis Chaplygin
306c047c14
Generalized flatbuffers response generation in 'Route','Trip','Match' services.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
533f1ffc6b
Inlined routes and waypoints, as all services are using at least one of those object, so there is no need for another one level of indirection.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
90191c9f34
Added flatbuffers output support to the 'Match' service
2019-08-26 11:08:56 +03:00
Denis Chaplygin
b7e9e5f2c0
Added flatbuffers output support to the 'Trip' service.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
13287d9970
Optimizing FB schema:
...
* Replaced Response union with nullable fields
* "Ok" code replaced with a boolean and a separate structure for a error code and message.
* Inlined geometry, thus removing one layer of indirection.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
affa8a4653
Added flatbuffers output support to the 'Route' service.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
9d7a74445d
Added flatbuffers output support to the 'Nearest' service.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
acd3e81ab4
Removed ineffectivness in the serialization schema. Positions are
...
structs now and distance/duration matrices are just arrays.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
ea111129dd
Added full flatbuffers support to the Table service
2019-08-26 11:08:56 +03:00
Denis Chaplygin
7ddda105a3
Added flatbuffers support to the PluginBase::Error
...
This changes BREAKS osrm.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
75aadb0f3f
Passed ResultT down to engine plugins, so now they can form replies in different formats.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
f6f86b2a52
Added flatbuffers schema.
2019-08-26 11:08:56 +03:00
Denis Chaplygin
59ca7840f4
Added output format parser to the Route service.
...
It is possible now to choose between json and flatbuffers (not yet implemented) output format.
Only route service is supported atm.
2019-08-26 11:08:56 +03:00
Daniel Patterson
2c7c18fd24
Fix bug in snapping=any when bearings or radiuses are supplied.
2019-02-15 20:42:30 -08:00
Daniel Patterson
4f0ec785f6
Configurable snapping behaviour ( #5361 )
2019-02-14 17:14:50 -08: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
381d492a8f
Add waypoints parameter to viaroute API ( #5345 )
...
* Add silent waypoints to viaroute API.
2019-01-24 16:19:59 -08:00
Daniel Patterson
1d82b01816
Count reverse offset from the back of the geometry, not the front.
2018-12-15 21:07:06 -07: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
06e010b4d0
Include information on estimates in table response ( #5259 )
...
* Revert "Remove estimated_cells value in the response."
This reverts commit 364e35af06
.
* Update changelog.
* fix linting
* adjust fallback_speed check
* change [].includes to [].indexOf !== -1 for compatibility with node 4
* change param name
* more cuke tests
* fix formatting
2018-12-11 12:21:57 -05:00
Kajari Ghosh
01ca32c81c
Fix fallback speed validity checks ( #5300 )
...
* fix fallback_speeds check to only accept values > 0
* add invalid_fallback_speed
2018-12-10 14:53:30 -05:00
Kajari Ghosh
2e17f3010a
Add a multiplier to the matrix ( #5298 )
...
* add a multiplier to the matrix
* add rounding
* remove scale_factor restrictions
* clamp for overflow error
* update check to match error message
* enforce clamping on < 0 and increase test coverage
* add an invalid scale_factor value to node tests
* increase test coverage
* changelog
2018-12-10 13:41:44 -05:00
Kajari Ghosh
98ea2a0b09
remove destination/sources length <= coordinates length check ( #5289 )
2018-12-04 13:35:26 -05:00
Daniel Patterson
4dde9c7bbe
Include distance from input to snapped for all waypoints, not just on the nearest
service.
2018-11-02 15:30:52 -07:00
Daniel Patterson
364e35af06
Remove estimated_cells value in the response.
2018-11-02 01:08:59 -07:00
Daniel Patterson
985ab58f45
Add feature to fill null table entries with as-the-crow-flies estimates.
2018-11-02 01:07:24 -07:00
Daniel Patterson
a67c4bf84d
Calculating durations is unavoidable due to tie-breaking minimums, but we can avoid accumulating distances if they're not requested.
2018-10-30 15:41:06 -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
Daniel Patterson
b7e7d32361
Expose new --mmap switch
(mmap_memory: true
in NodeJS), and run test suite in this mode, as well as shared memory mode.
2018-10-26 23:54:00 -07:00
Daniel Patterson
2f9cb44368
mmap
tarfiles directly when mmapping is enabled, instead of copying data into separate mmapped block
...
Co-authored-by: Kajari Ghosh <ghoshkaj@gmail.com>
2018-10-26 23:53:59 -07:00
Kajari Ghosh
5597415f28
Revert "Improve speed of Map Matching" ( #5196 )
...
* Revert "Update changelog"
This reverts commit 9b779c704f
.
* Revert "Fix formating"
This reverts commit 5bd7d04fe3
.
* Revert "Fix bug in computation of distance offset for phantom node"
This reverts commit 0f78f7b2cc
.
* Revert "Adjust text cases for flightly different matching due to rounding"
This reverts commit 8473be69d2
.
* Revert "Round network distance to deci-meter to retain previous behavior"
This reverts commit c0124f7d77
.
* Revert "Preserve heap state in map matching"
This reverts commit b630b4e32a
.
* Revert "Use distance functions from many to many"
This reverts commit 89fabc1b9c
.
* Revert "Use FCC algorithm for map matching distance calculation"
This reverts commit a649a8a5cf
.
2018-09-06 12:05:28 -04:00