-
Notifications
You must be signed in to change notification settings - Fork 64
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
Fix for cycle detection issue #2112
Conversation
Looks like the code I touched is also used for federation to figure out the topology. For cycle detection, a physical connection should break the cycle, which it does now, but it makes federated tests fail. Not sure how to address this. @edwardalee, could you take a look? |
It is not surprising that this change would cause failures. It changes the semantics of the eventualDestinations method. I'm surprised there aren't unfederated failures. I also think that excluding connections with delays is suds. Maybe this is related to federated failures with multiport's and delays? |
To me, it is surprising. This code is used for causality analysis in the validator. Maybe it should not be, but for that use, connections that are physical or have delay should not imply dependencies. |
The
I think your reasoning is that a physical connection is much like an |
6364218
to
e2fe20c
Compare
@lhstrh I fixed the compile error by not assigning the TPO level to physical connections and added a test for this PR's change. Could you review them? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not aware of any way that these changes could cause problems. I think it's true that physical connections do not need to be addressed in TPO.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like the right solution to me!
Fixes #2033.