Skip to content

Prevent circular dependencies between Redis patches, and use GitLab code

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

In gitlab-com/gl-infra/production#8141 (closed), we discovered that certain monkey-patched Redis classes use GitLab code, which GitLab/application code in turns uses the Redis classes. This created stack overflow in that incident.

!106940 (merged), we banned Feature flags in lib/gitlab/patch/**/*.rb.

Proposal

We need to go further, and isolate these patches. Monkey-patches we should look at:

Perhaps we can move these monkey-patches to its own directory so that we can test it can run in isolation ?

/cc @splattael @schin1 @smcgivern @marcogreg

Edited by 🤖 GitLab Bot 🤖