-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Pass empty timetable to TransitLayerUpdater in order to clear added trip patterns #6280
base: dev-2.x
Are you sure you want to change the base?
Conversation
5a4a351
to
d931077
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## dev-2.x #6280 +/- ##
==========================================
Coverage 69.79% 69.80%
- Complexity 17786 17798 +12
==========================================
Files 2017 2017
Lines 76042 76081 +39
Branches 7781 7789 +8
==========================================
+ Hits 53073 53106 +33
Misses 20264 20264
- Partials 2705 2711 +6 ☔ View full report in Codecov by Sentry. |
application/src/main/java/org/opentripplanner/model/TimetableSnapshot.java
Show resolved
Hide resolved
Sorry it seems that the bug still appears on the live server, so I need to mark this as draft for now. |
The solution will not work if a timetable is cleared multiple times between commits. Also on my live server log there are a lot of "WARN could not fetch timetable for pattern" which may be related to this problem as well. I'll need to further fix it. |
What does this line actually mean: Line 198 in d931077
My server log is flooded with this. |
…Layer during commit
Would it work and would it be simpler if:
|
I think it will be better and I will work on this. |
Unfortunately TransitLayerUpdater is not feed aware and it doesn't really have a state, so it is not possible for me to do that without adding complexity into the system. There is no concept of a "feed" and the "original" in the TransitLayer. |
PR Instructions
Summary
Currently, after clearing TimetableSnapshot, if it is committed directly empty, nothing is passed to TransitLayerUpdater. As a result, previously added trip patterns remain in the TransitLayer for routing purpose, resulting in stale timetables returned in itinerary results which no longer exist in the actual, published timetable snapshot.
Issue
Fixes #6197
Unit tests
Added
Documentation
Bug fix only, not needed
Changelog