During a project destroy, log the audit and Geo events within the transaction
This prevents odd issues where audit events are not logged if the project is abruptly destroyed due to Sidekiq shutting down or some other reason.
Relates to gitlab-com/migration#295 (closed)
CE backport: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/19602/diffs
Edited by Stan Hu