This include backported changes from https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/7395/diff