HomePhabricator

Store references in page_props and cache

Description

Store references in page_props and cache

This stores references in page_props during links update in
compressed JSON form. If the size is too big, it's broken up
in several parts to fit, which is very unlikely to occur more
than once.

When the data is retrieved from the db, it's always cached. If
set in config, it's also saved in the cache on parse. If not,
the cache is invalidated when references are modified.

Uses cases include : section preview to also show refs defined
elsewhere on the page (T124840) and MobileFrontend (T123328).
For the later, this still needs API support (T123290).

There's a soft dependency on the core change
I0c73b3d181f32502da75687857ae9aeff731f559.

Bug: T125329
Change-Id: I7b106254b8f264f93b0f0c9cfa89f65adeeea4f0