Incorrect error message when unable to snap all input coordinates#5846
Merged
danpat merged 1 commit intoProject-OSRM:masterfrom Oct 1, 2020
Merged
Incorrect error message when unable to snap all input coordinates#5846danpat merged 1 commit intoProject-OSRM:masterfrom
danpat merged 1 commit intoProject-OSRM:masterfrom
Conversation
danpat
reviewed
Sep 30, 2020
| { | ||
| BOOST_ASSERT(phantom_nodes.size() < coordinates.size()); | ||
| size_t missing_index = phantom_nodes.size(); | ||
| for (size_t i : util::irange<size_t>(0, phantom_nodes.size())) |
Member
There was a problem hiding this comment.
Suggestion: I think this could be done with std::mismatch, which I think helps clarify intent a bit.
auto mismatch = std::mismatch(phantom_nodes.begin(), phantom_nodes.end(),
coordinates.begin(), coordinates.end(),
[](const auto &phantom_node, const auto &coordinate) {
return phantom_node.first.input_location == coordinate;
});
std::size_t missing_index = std::distance(phantom_nodes.begin(), mismatch.first);
Member
Author
There was a problem hiding this comment.
Nice. Yes, a lot clearer.
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.
68d36c7 to
838d289
Compare
danpat
approved these changes
Oct 1, 2020
datendelphin
added a commit
to fossgis-routing-server/osrm-backend
that referenced
this pull request
Nov 19, 2020
- Changes from 5.22.0
- Build:
- FIXED: pessimistic calls to std::move [Project-OSRM#5560](Project-OSRM#5561)
- Features:
- ADDED: new API parameter - `snapping=any|default` to allow snapping to previously unsnappable edges [Project-OSRM#5361](Project-OSRM#5361)
- ADDED: keepalive support to the osrm-routed HTTP server [Project-OSRM#5518](Project-OSRM#5518)
- ADDED: flatbuffers output format support [Project-OSRM#5513](Project-OSRM#5513)
- ADDED: Global 'skip_waypoints' option [Project-OSRM#5556](Project-OSRM#5556)
- FIXED: Install the libosrm_guidance library correctly [Project-OSRM#5604](Project-OSRM#5604)
- FIXED: Http Handler can now deal witch optional whitespace between header-key and -value [Project-OSRM#5606](Project-OSRM#5606)
- Routing:
- CHANGED: allow routing past `barrier=arch` [Project-OSRM#5352](Project-OSRM#5352)
- CHANGED: default car weight was reduced to 2000 kg. [Project-OSRM#5371](Project-OSRM#5371)
- CHANGED: default car height was reduced to 2 meters. [Project-OSRM#5389](Project-OSRM#5389)
- FIXED: treat `bicycle=use_sidepath` as no access on the tagged way. [Project-OSRM#5622](Project-OSRM#5622)
- FIXED: fix table result when source and destination on same one-way segment. [Project-OSRM#5828](Project-OSRM#5828)
- FIXED: fix occasional segfault when swapping data with osrm-datastore and using `exclude=` [Project-OSRM#5844](Project-OSRM#5844)
- FIXED: fix crash in MLD alternative search if source or target are invalid [Project-OSRM#5851](Project-OSRM#5851)
- Misc:
- CHANGED: Reduce memory usage for raster source handling. [Project-OSRM#5572](Project-OSRM#5572)
- CHANGED: Add cmake option `ENABLE_DEBUG_LOGGING` to control whether output debug logging. [Project-OSRM#3427](Project-OSRM#3427)
- CHANGED: updated extent of Hong Kong as left hand drive country. [Project-OSRM#5535](Project-OSRM#5535)
- FIXED: corrected error message when failing to snap input coordinates [Project-OSRM#5846](Project-OSRM#5846)
- Infrastructure
- REMOVED: STXXL support removed as STXXL became abandonware. [Project-OSRM#5760](Project-OSRM#5760)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue
Fixes #5845
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.
Tasklist