Database Cache doesn't work as expected for Geo

Summary

GitLab Geo (#76 (closed)) secondary instances can't write into the database (it uses a read-only PostgreSQL slave).

Banzai (the markdown pipeline) is using the database to cache some content here: https://gitlab.com/gitlab-org/gitlab-ee/blob/582926b7c7d3fe1126f43d08978942fb25ca321a/lib/banzai/renderer.rb#L49

cc @nick.thomas @stanhu @patricio

Steps to reproduce

Any already cached content in primary node, will be "cached" in the secondary node, because of the database replication Any non cached content in the primary, will never be cached in the secondary node.

Expected behavior

Cache should be something "instance dependent", or we should try to backfill the database cache.

Actual behavior

Any non cached content (existing data that has not been accessed after the migration to 8.13), will not be cached when accessed only by any secondary node.

Possible fixes

See discussion here: https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/834#note_17760560