Skip to content

Fix n plus 1 strict loading

Nicolas Bouilleaud requested to merge fix-n-plus-1-strict-loading into main

Le patch qu’on avait fait précédemment était buggué: on mettait le mode à :n_plus_one_only pour tous les records, ce qui équivaut à désactiver le strict_loading complètement.

On ne veut pas non plus mettre au mode :all, parce que ça casse un usage normal où on fetch une instance, puis ses relations directes: ce cas ne génère que deux requêtes (une pour le find et une pour la relation), et n’est donc pas un problème.

En fait, le mode :n_plus_one_only, par défaut, est mal nommé: il détecte le deuxième niveau de boucles, autrement dit le N²+1. Il y plus de discussion ici.

Merge request reports