Einzelnen Beitrag anzeigen

Benutzerbild von MyRealName
MyRealName

Registriert seit: 19. Okt 2003
Ort: Heilbronn
679 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: Firebird 3.0 in einer SP (Multiuser-Umfeld) ein Wert ändern

  Alt 9. Mai 2022, 13:01
Es gibt da noch die globalen Variablen, die zur Connection oder Session gehören. Da kann man über die Tabelle auch die der anderen Connections/sessions sehen und auslesen. Könnte man anlegen, falls sie nicht da ist und löschen wenn man fertig ist. Und darüber dann sagen, welche Chargennummer man da gerade nutzt. wenn das mehrere Sessions sind, die sowas machen, dann einfach nur die größte einer fremdsession (also wo SessionId halt nicht die eigene ist) raussuchen und dann die nächste nehmen und selbst die Variable dann für die eigene Session anlegen. Und löschen, wenn man fertig ist.
Unter High Load ist das kein echter Lösungsansatz, weil rollbacks oder exceptions die sessionvariablen dann nie wieder freigeben würden, daher würde ich das so nicht machen
Wenn die Session ungültig wird, werden dann nicht automatisch die Variablen gelöscht ? Oder könnte man einen Inner-Join zur Sessiontabelle machen und so sicher stellen, das ungültige Einträge ignoriert werden ?
  Mit Zitat antworten Zitat