[10.x] Add error handling and ensure re-enabling of foreign key constraints #47182
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.
This pull request enhances the
withoutForeignKeyConstraints
method to handle exceptions and ensure proper re-enabling of foreign key constraints. Previously, if an exception occurred within the callback function, the foreign key constraints would not be re-enabled, leading to potential issues.The changes introduced a try-finally block, allowing for proper error handling. The foreign key constraints are disabled before executing the callback, and regardless of whether an exception is thrown or not, they are always re-enabled using the
enableForeignKeyConstraints
method.