Debuggen von Rspec Postgres-Sperren

9

Ich versuche, eine App zu testen, die gem devise_token_auth verwendet, was im Grunde genommen ein paar zusätzliche DB-Lese- / Schreibvorgänge bei fast jeder Anfrage beinhaltet (um Benutzerzugriffstoken zu überprüfen und zu aktualisieren).

Alles funktioniert einwandfrei, außer wenn eine Controller-Aktion getestet wird, die mehrere zusätzliche Lese- / Schreibvorgänge der Datenbank enthält. In diesen Fällen blockiert das Terminal und ich bin gezwungen, den Ruby-Prozess über den Aktivitätsmonitor zu beenden.

Manchmal bekomme ich Fehlermeldungen wie folgt:

%Vor%

Ich habe keine Ahnung, wie ich das interpretiere. Ich bin 90% sicher, dass das Problem auf dieses Juwel und die zusätzliche DB-Aktivität zurückzuführen ist, die es bei jeder Anfrage verursacht, weil ich, wenn ich auf meine vorherige, weniger intensive Auth zurückkehre, alle Probleme verschwinden. Ich habe auch die Dinge unter Kontrolle gebracht, indem ich Postgres etwas Zeit für die problematischen Tests gebe:

%Vor%

Dies funktioniert in allen Fällen, außer in einem Fall, bei dem ein Timeout vor expect erforderlich ist. Andernfalls wird dieser Fehler ausgegeben:

%Vor%

was für mich wieder auf das DB-Problem hinweist.

Gibt es noch etwas, das ich tun könnte, um diese Fehler aufzuspüren / zu kontrollieren? Irgendwelche rspec Einstellungen, die ich untersuchen sollte?

    
user2936314 19.09.2014, 12:55
quelle

0 Antworten

Tags und Links