Wrap mem.consolidate_logs in try-except to prevent model run crashes #979
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.
An ActivitySim model run can crash with a
FloatingPointError: overflow encountered in multiplywhen consolidating memory logs due to timestamp overflow issues in pandas datetime conversion. This affects production runs where users lose all model results despite the core modeling completing successfully.The error occurs in
mem.consolidate_logs()when processing timestamp data:When timestamp values are corrupted or extremely large, this causes an overflow during the conversion process, crashing the entire model run.
This PR implements an intermediate fix by wrapping the
mem.consolidate_logs(state)call in a try-except block:This provides graceful degradation where the core model functionality continues to work even when the secondary memory logging feature fails. Users receive a clear warning message explaining what happened and that their model results are unaffected.
As noted by @bhargavasana, "One in five runs of ours are failing because of this" - this fix addresses that immediate production issue while preserving all existing functionality.
Fixes #959.
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.