Yorick Peterse
6f292eaa69
Revert the addition of goldiloader
...
This reverts the addition of the "goldiloader" Gem and all use of it.
While this Gem is very promising it's causing a variety of problems on
GitLab.com due to it eager-loading too much data in places where we
don't expect/can handle this. At least for the time being this means we
have to go back to manually fixing N+1 query problems, but at least
those should not cause a negative impact on availability.
2018-04-18 15:51:39 +02:00
Sean McGivern
4ef3e3491e
Add cop for has_many :through without disabled autoloading
...
Goldiloader is great, but has several issues with has_many :through relations:
* https://github.com/salsify/goldiloader/issues/12
* https://github.com/salsify/goldiloader/issues/14
* https://github.com/salsify/goldiloader/issues/18
Rather than try to figure out which applies in each case, we should just do the
drudge work of manually disabling autoloading for all relations of this type. We
can always use regular preloading for specific cases, but this way we avoid
generating invalid queries through Goldiloader's magic.
2018-04-09 12:47:04 +01:00
Bob Van Landuyt
7582bc8b4e
Unlink a project from a fork network when it's source was deleted.
...
We need to close all merge requests coming from the project within the
entire fork network.
2017-11-03 12:17:59 +01:00
Bob Van Landuyt
f90b27da77
Find forks within users/namespaces using fork memberships
2017-10-07 11:46:23 +02:00
Bob Van Landuyt
d328007214
Create a fork network when forking a project
...
When no fork network exists for the source projects, we create a new
one with the correct source
2017-10-07 11:46:23 +02:00
Bob Van Landuyt
20727db170
Add a model for fork_networks
...
The fork network will keep track of the root project as long as it's
present.
2017-10-07 11:46:22 +02:00