Page MenuHomeSealhub

Zdiagnozować powód powolności testów
Closed, ResolvedPublic

Description

Selection_097.png (280×950 px, 50 KB)

Trzeba sprofilować kod i odkryć, która funkcja zjada najwięcej czasu.

Jeżeli najwięcej czasu zajmuje negocjowanie połączenia z bazą danych lub otwieranie portu http, to być może trzeba będzie dzielić instancje serwera www lub klienta mongo pomiędzy wszystkimi instancjami with_test_app: https://hub.sealcode.org/diffusion/SAR/browse/alpha/test_utils/with-test-app.js

Revisions and Commits

rS Sealious
Restricted Differential Revision
Restricted Differential Revision

Event Timeline

kuba-orlik triaged this task as High priority.Apr 7 2018, 11:44
kuba-orlik created this task.
kuba-orlik created this object in space S5 Publiczna.
kuba-orlik created this object with visibility "Public (No Login Required)".

Przy pierwszym teście w danym suite najwięcej czasu zżrera tworzenie Sealious.App (linijka 16 w with-setup-test.js) np. 811ms / 1244ms. Przy kolejnych testach jest już inaczej.

Wtedy najwięcej czasu zużywa app.start() (linijka 76 w with-setup-test.js) np. 172ms / 252ms. A w samym app.start() 60% - 70% czasu zużywa await this.emit("start");, zapewne dlatego, że oczekujemy wtedy na te różne hooki.

Ugh, ale kiepskie wyniki :/

Co zjada najwięcej czasu w with-setup-test?

Nie rozumiem o co pytasz, bo wydaje mi się, że odpowiedź na to jest zawarta w moim pierwszym komentarzu. Doprecyzuj proszę

sorry, miałem zapytać o tego emita. Na pewno nie możemy się go pozbyć, więc trzeba zbadać, co zjada tam tyle czasu.

Bartek przepisuje teraz logikę Emita sprowadzając ją do eleganckiego reduce-a. Być może warto wstrzymać się z diagnozą aż ten rewrite się zakończy

@kuba-orlik Dobrze mi się wydaje, że ten rewrite już się zakończył?

Mam podejrzenie, że ta powolność może być spowodowana faktem, że Sealious przy każdym teście odkrywa, że aplikacja jest pusta i dokonuje wysyłki maila z rejestracją...

kuba-orlik added a revision: Restricted Differential Revision.Aug 13 2018, 12:09
kuba-orlik mentioned this in Unknown Object (Maniphest Task).Aug 13 2018, 12:29
kuba-orlik added a revision: Restricted Differential Revision.Aug 13 2018, 16:39
kuba-orlik claimed this task.
kuba-orlik added a subscriber: piotr-ptaszynski.