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.
Fixes status-im/status-desktop#13438 and status-im/status-desktop#13439
The official problem to the hanging was that the timestamp format used in the code didn't support
-
time zones, like-4
.Using the default format from the
time
library fixes it.The bigger problem however was that the progress got stuck at 75% in case of that type of error. Since the messages array ended up being empty because all the timestamps were "wrong", the progress missed the 25% needed that would have been done with a loop.
I guess if you imported a channel with no messages, you'd also have run in that issue.
The solution I found is to set the progress to 100% for messages if there are no messages. The errors still show.
I also cover our asses in case another problem like this happens again with another task and make sure all tasks are set to 100% if we end up reaching the end of the process. That way, the user knows that we actually finished and can check the errors to either try again or leave it as is.