JWManagement / JWManagement

GNU Affero General Public License v3.0
57 stars 30 forks source link

Fehler - Email bei "Schicht unterbelegt" #99

Open alisander2 opened 7 years ago

alisander2 commented 7 years ago

Mir haben etliche Brüder und Schwestern berichtet, dass die E-Mail über eine unterbesetzte Schicht mehrfach angekommen ist. Teilweise bis zu fünf mal. Bei meiner Frau kam sie zumindest dreinmal an.

Bei mir selbst jedoch nur einmal.

MarvinZeising commented 7 years ago

Leider weiß ich immer noch nicht sicher, warum das passiert ist.

Meine beste Erklärung ist bis jetzt, dass das damit zusammen hängt, dass die Sende-Methoden alle asynchron aufgerufen werden, der Mail-Service aber global ist, quasi als Singleton. Vielleicht kommt dabei dann irgendwas durcheinander. Also wenn der Sende-Vorgang der einen Mail aufgerufen wird, ist der für eine andere Mail bereits im Vorgang, hat aber gerade erst den Inhalt gesetzt und die Mail noch nicht verschickt. Wenn durch die eine Mail dann der Inhalt wieder verändert wird (bzw. vor allem der Empfänger), werden dadurch vielleicht beide Mails an den letzten, damit selben Empfänger gesendet.

Im restructuring Branch versuche ich gerade, diese asynchronen Aufrufe auf ein minimum zu reduzieren, damit so etwas nicht mehr passieren kann. Dann wird die Sende-Methode für die zweite Mail erst aufgerufen, wenn die erste komplett versendet wurde. Diese Änderungen werden voraussichtlich mit der 1.1.0 live gehen.