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

[WIP] Fix bug in internal PBF deserialization of locations #1449

Merged
merged 6 commits into from
Aug 10, 2018

Conversation

ianthetechie
Copy link
Contributor

@ianthetechie ianthetechie commented Jul 29, 2018

Issue

This will close #1448 and it will close #1468

I'll try to write up a test for this in the next day or two, and have marked it WIP until then. I didn't see a CONTRIBUTING doc (just a paragraph or 2 in the main README), so let me know if I am missing anything.

Tasklist

  • Add tests
  • Review - you must request approval to merge any PR to master
  • Add #fixes with the issue number that this PR addresses
  • Generally use squash merge to rebase and clean comments before merging
  • Update the changelog
  • Update relevant documentation

@ianthetechie
Copy link
Contributor Author

Note that I was unable to get the tidy script to run on mac. I'll run it one way or another before removing the WIP flag.

@kevinkreiser
Copy link
Member

kevinkreiser commented Jul 29, 2018

no worries add a test and we'll review it when you're ready. if you cant get the tidy script to run thats also no problem we can run it for you. just ping back when you are ready for us to take a look!

@ianthetechie
Copy link
Contributor Author

Hey @kevinkreiser mind taking a look now?

  • I was able to get the tidy script to run on a Linux box.
  • I wrote a test for the patch, and in the process touched one of the operator implementations and added a method since the original behavior seemed rather strange (fortunately, it appears to have only been used in a test, which incidentally documented the behavior better than the method docstring). If you'd prefer this be implemented differently, let me know. I identified usages by adding delete = to the operator to make sure this wouldn't have any unintended performance side-effects.
  • My test does pass, but it looks like either master is busted, something externally changed, etc... I'm assuming this isn't my fault based on the string of red X's on the PR list, but if you need me to pull in some new changes or anything, let me know.
  • I'd recommend backporting this to 2.x, as this issue affects all release builds since February.

@kevinkreiser
Copy link
Member

related to #1468 i think

@kevinkreiser
Copy link
Member

@ianthetechie i believe ive fixed the issue with the failing node tests 🤞 that CI passes as well

kevinkreiser
kevinkreiser previously approved these changes Aug 9, 2018
@@ -167,7 +173,8 @@ struct PathLocation : public Location {

static Location fromPBF(const odin::Location& loc) {
Location l({loc.ll().lng(), loc.ll().lat()},
odin::Location::kBreak ? Location::StopType::BREAK : Location::StopType::THROUGH,
Copy link
Member

Choose a reason for hiding this comment

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

just for posterity, this is where the real bug lies. kBreak == 0 and therefore everything gets set to through. im pretty sure that this bug is my fault.. sorry all!

@blackgate
Copy link

I already checked this and it fixes the #1468
Thank you

kevinkreiser
kevinkreiser previously approved these changes Aug 10, 2018
@kevinkreiser kevinkreiser merged commit 1bb2bfb into valhalla:master Aug 10, 2018
@darbultr
Copy link

darbultr commented Nov 6, 2018

problem also exists on docker

@ianthetechie
Copy link
Contributor Author

From the looks of it, dockerized builds are still very much WIP. I would recommend building the v2.7.0 from source.

@kevinkreiser
Copy link
Member

just a freindly reminder, master is no longer unstable. feel free to build master from source instead of sticking on 2.7.0. and yeah we haven't given docker much love in a while.. need to find time to get back to that at some point!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Break locations treated as through Location type information is lost when deserializing from PBF
4 participants