Das ist nichts anderes als eine Race-Condition, diese kann auftreten wenn jemand seinen Browser startet und beim Start in 2 oder mehr Tabs das Forum geöffnet wird. Wenn nun beide Requests parallel verarbeitet werden bzw. nur Sekundenbruchteile zwischen ihnen liegen, kann das folgende Problem auftreten (das gibt es im übrigen auch bei Burning Board 3):
Tab 1 führt den Login durch
Tab 2 führt den Login durch
Tab 1 prüft, ob bereits eine Session existiert (Ergebnis: Nein)
Tab 2 prüft, ob bereits eine Session existiert (Ergebnis: Nein)
Tab 1 erzeugt eine neue Session
Tab 2 erzeugt eine neue Session
Ich habe für WCF 2.1 einen work-around eingebaut, der dazu führt das in diesem Falle Punkt 6 fehlschlägt und daraufhin die Prüfung erneut durchgeführt wird. Auf diese Weise können wir das Problem umgehen und es wird garantiert nur eine Session erzeugt (bzw. eine Session aber zwei virtuelle).
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!