Add an ensure to make sure current_tenant gets changed back to old_tenant even if block.call generates an exception