Skip to content

Optimize cross ref system notes check

What does this MR do?

This MR optimizes system note visibility checking by memoizing the visible reference count, reducing the overhead of calling Note#cross_reference_not_visible_for?.

Are there points in the code the reviewer needs to double check?

Note that since a cross reference message contains, "Mentioned in XYZ", we EXPECT that there is at least one reference. That's why using the ref count > 0 works.

Why was this MR needed?

The previous implementation relied on Note#cross_reference_not_visible_for?, which essentially tries to render all the Markdown references in a system note and only displays the note if the user can see the referring project. But this duplicated the work that Banzai::NotesRenderer was doing already. This shaves about 0.8 s from the load time from gitlab-com/operations#42 (closed).

What are the relevant issue numbers?

#19273 (closed)

Screenshots (if relevant)

Does this MR meet the acceptance criteria?

Merge request reports