Problem/Motivation
ContentEntityBase::hasTranslationChanges checks if $this->original is set. If it is set it means the function has been called in a save context call, otherwise it has been called outside a save context call and $this->original will not be set. The code then attempts to load an original. When dealing with a migration rollback and deleting related content programmatically as part of the rollback, there often simply is no original at all.
This function can perform without the original, as the absence of an original simply means there are no translation changes. This means that an error in this albiet uncommon context is non-essential as the code can proceed without issue in the absence of an original. The absence of an original is in fact acknowledged in the comments before this code: // $this->original only exists during save.
Proposed resolution
Add logic to hasTranslationChanges() early check of if (!$original) { ... } to simply return false if the second attempt to find an original fails.
Remaining tasks
Write a test
User interface changes
none
API changes
none
Data model changes
none