Update diff discussion position per discussion instead of per note
Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/33157, introduced in https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/11584.
Also includes a performance improvement by only tracing the diff line once per discussion, instead of again for each note in the discussion.
Edited by Douwe Maan