HI oba team,
While investigating oba logs showing "could not determine service date for trip 30552027837449," I traced the issue to getBlockServiceDateFromTrip in BlockFinder.java. Specifically, this line:
BlockServiceDate blockServiceDate = getBlockServiceDateFromTripUnCached(tripEntry, currentTime); returns null, which is then cached. (As an aside, should a null result be cached in this case?)
Digging deeper, the null originates in getBlockServiceDateFromTripUnCached. The condition:
if (adjustedTripStartTime > 0) { fails because adjustedTripStartTime is 0. From what I can tell, this is correct behavior—0 aligns with the first trip in the block starting at midnight (00:00:00), which is valid per GTFS.
This made me wonder: shouldn’t the condition be if (adjustedTripStartTime >= 0) to include midnight starts? Excluding 0 seems to reject valid cases unnecessarily.
Any insights or suggestions on this?
I’d appreciate your thoughts!
Best regards,
kossavot