When deleting an extension's data, the migrator attempts to automatically revert the custom functions defined in update_data() by calling these functions. This should not be the case. Reverting of custom actions should be done with revert_data() (https://wiki.phpbb.com/Migrations/Data_Changes#revert_data).
This current behaviour is causing problems when uninstalling extensions (https://www.phpbb.com/community/viewtopic.php?p=13609246#p13609246 https://www.phpbb.com/community/viewtopic.php?p=13591096#p13591096). Since the custom functions are not aware of whether they're being reverted, it falls on them to figure out what state the data is in before proceeding in order to work around this.