Gelöst [WAWI-47615] Packtisch+ Absturz wegen Deadlock seit der Umstellung auf 1.15.24.1

  • Ersteller des Themas Ersteller des Themas mvh
  • Erstellungsdatum Erstellungsdatum
Status
Es sind keine weiteren Antworten möglich.

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Sehr geehrte Forum-Mitglieder,

seit dem Update von 1.15.15 auf 1.15.24 haben wir jeden Tag 2-3 Packtisch-Abstürze pro Tag, wegen Deadlock-Situation.
Meistens Fehler-ID: 3517993387919063686 (Unbehandelte Ausnahme #30D26C58E116BA86),
aber auch: 6145654166472467632, 3517993387919063686, 7119020817467705949, 5022869314477599677, 4374783295074300176, 5526660493253168655.

Habt Ihr das auch?
Viele Grüße, Ihr mvh-Team
 

Anhänge

trennscheibenwelt

Sehr aktives Mitglied
17. März 2017
1.039
230
Herne
Ich befinde mich auf der 1.5.24.0 und kann zum Glück soetwas nicht beobachten.
Vielleicht als Notlösung eine Version zurück gehen?
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Ich befinde mich auf der 1.5.24.0 und kann zum Glück soetwas nicht beobachten.
Vielleicht als Notlösung eine Version zurück gehen?
Das ist leider nicht mehr so einfach möglich, und wir haben 6 Packtische, was die Wahrscheinlichkeit solcher Fehler stark erhöht.
Wir vermuten es liegt an dem Workflow mit der automatischen Umstellung aller Aufträge von 19% auf 16%, was von JTL in dem Video empfohlen wurde.
Wir haben es Gestern Abend abgeschaltet, und werden Heute die Situation beobachten und berichten am Abend.
 

KevinK

Mitglied
Mitarbeiter
1. April 2016
1.568
128
Hückelhoven
Firma
JTL-Software-GmbH
Hallo zusammen,

bitte meldet euch damit bei uns im Support, die Kollegen schauen sich das im Einzelfall gerne an bei Euch. Gerne auch mit Verweis zu diesem Beitrag.
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Hallo zusammen,

bitte meldet euch damit bei uns im Support, die Kollegen schauen sich das im Einzelfall gerne an bei Euch. Gerne auch mit Verweis zu diesem Beitrag.
Wir haben einen Ticket erstellt, Ticket#2020070910000951.
Die Situation hat sich nicht verbessert, alleine Gestern - 5 Abstürze, Fehler-ID: 3517993387919063686, Unbehandelte Ausnahme #30D26C58E116BA86
Viele Grüße, Ihr MVH-Team
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Wir werden über SQL Server Profiler alle Deadlocks (mit Graph) protokollieren lassen
und später in dem Thread über alle Funde berichten.
 

KevinK

Mitglied
Mitarbeiter
1. April 2016
1.568
128
Hückelhoven
Firma
JTL-Software-GmbH
Hallo zusammen,

ich habe die Kollegen gebeten sich danach hier im Forum zu melden, mit weiteren Informationen 🙂
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Wir haben noch einige Informationen. Das Problem ist wie folgt nachzustellen:
2 Packtische, bei einem werden Aufträge angezeigt:
SQL:
WITH OuterResult AS
(
    SELECT dbo.tBestellung.* ,     CASE WHEN BestellInfo.nLieferbarEigen = 1 AND (dbo.tBestellung.kColor IN (0,16777215)) THEN 'Yellow' ELSE CAST (dbo.tBestellung.kColor AS VARCHAR) END  AS ItemState,
                           BestellPos.fAnzahlArtikel,BestellInfo.nLieferbarEigen AS nStatusEigen,dbo.tversandart.cName AS VersandArt
                           FROM dbo.tBestellung
                           JOIN Versand.vBestellungLieferInfoProLager AS BestellInfo ON BestellInfo.kBestellung = dbo.tBestellung.kBestellung
                           LEFT JOIN dbo.tversandart ON dbo.tversandart.kVersandArt = dbo.tBestellung.tVersandArt_kVersandArt
                           LEFT JOIN dbo.tKunde ON dbo.tKunde.kKunde = dbo.tBestellung.tKunde_kKunde
                           LEFT JOIN dbo.tZahlungsart  WITH(NOLOCK) ON dbo.tZahlungsart.kZahlungsart = dbo.tBestellung.kZahlungsart
                           OUTER APPLY (SELECT SUM(Versand.vBestellPosLieferInfo.fAnzahlOffen) AS fAnzahlArtikel
                                        FROM dbo.tbestellpos
                                        JOIN Versand.vBestellPosLieferInfo ON Versand.vBestellPosLieferInfo.kBestellPos = dbo.tbestellpos.kBestellPos
                                        WHERE dbo.tbestellpos.tBestellung_kBestellung = dbo.tBestellung.kBestellung
                                        GROUP BY dbo.tbestellpos.tBestellung_kBestellung) AS BestellPos  WHERE BestellInfo.kWarenlager = 1
                                          AND BestellInfo.nLieferbarEigen != 0
                                          AND dbo.tBestellung.nKomplettAusgeliefert = 0
                                          AND dbo.tBestellung.nStorno = 0
                                          AND isnull(dbo.tKunde.cSperre,'') != 'Y'
                                          AND (dbo.tBestellung.kRueckhalteGrund IS NULL OR dbo.tBestellung.kRueckhalteGrund = 0)
                                          AND (dbo.tBestellung.dBezahlt IS NOT NULL OR ISNULL(dbo.tZahlungsart.nAusliefernVorZahlung,0) = 1)
                                          AND NOT EXISTS (SELECT *
                                                          FROM dbo.tPicklistePos
                                                          WHERE tPicklistePos.kBestellung = tBestellung.kBestellung
                                                          AND tPicklistePos.nStatus < 40)   AND tBestellung.cType in ('B','U')
)
bei dem anderen Packtisch wird gerade über Eazyshipping verpackt: die Prozedur spWMSVerpackeEazyshipping wird aufgerufen und von dort spBestellungEckdatenAktualisieren
und von dort kommt es zu Schlüsselsperren: PK_tBestellung und IX_tReserviert_kBestellung_INCL_fAnzahl
bzw. PK_tBestellung und IX_tLieferscheinPos_kBestellPos

1594631015894.png
bzw.
1594631062556.png
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Aber die schönsten Deadlocks zaubert der Worker, hier 1 Beispiel.
So schön, wie der SQL Server Profiler, kann ich bestimmt nicht zeichnen.
1594631343298.png
 

Anhänge

  • 1594631390213.png
    1594631390213.png
    78 KB · Aufrufe: 22

frankw

Moderator
Mitarbeiter
15. Dezember 2017
652
234
Hürth
Hallo zusammen,

wir werden die ListViews im JTL-Packtisch und JTL-WMS alle so umstellen, das diese die Tabellen beim Lesen nicht mehr sperren.

Das ändert zwar nichts an den vielen Deadlocks, aber die Anwendung dürfte dann nicht mehr so oft abstürzen.

Gruss,
Frank
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Hallo zusammen,

wir werden die ListViews im JTL-Packtisch und JTL-WMS alle so umstellen, das diese die Tabellen beim Lesen nicht mehr sperren.

Das ändert zwar nichts an den vielen Deadlocks, aber die Anwendung dürfte dann nicht mehr so oft abstürzen.

Gruss,
Frank
Das wäre sehr gut, würde aber das Problem hier nicht unbedingt lösen.
Ihr könnt aber Deadlocks direkt abfangen, etwas warten und wieder versuchen (das wird bei Euch in allen SPs gemacht),
oder auf Context-Info von SP-Aufrufen besser reagieren oder die Index-Sperre auf eine andere Weise lösen, usw.
 

frankw

Moderator
Mitarbeiter
15. Dezember 2017
652
234
Hürth
Sowas wird, soweit ich weiß, schon gemacht. Für die 1.6 wurde die Datenbank sehr stark überarbeitet.

Auf die Schnelle (für die 1.5) kann ich nur an den Baustellen im WMS / Packtisch was machen.

Gruss,
Frank
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Sowas wird, soweit ich weiß, schon gemacht. Für die 1.6 wurde die Datenbank sehr stark überarbeitet.

Auf die Schnelle (für die 1.5) kann ich nur an den Baustellen im WMS / Packtisch was machen.

Gruss,
Frank
Das sind gute Neuigkeiten.
Mich würde interessieren, wann die 1.6 rauskommt und wann sie für den produktiven Einsatz geeignet ist.
Aber das kann bestimmt noch keiner genau sagen.

Zu unserem Anliegen:
Die Abstürze haben wir jetzt, jeden Tag, an jedem Packtisch, nach Update auf 1.5.24.
Wir haben Heute einen telefonischen Termin mit Ihren Kollegen, hoffen auf eine Lösung.
Von unserer Seite haben wir hier im Forum alle Einzelheiten dazu geliefert.
 

mvh

Sehr aktives Mitglied
26. Oktober 2011
1.221
462
Nach Update auf 1.5.26.

Ja, was soll ich sagen.
Dieser Fehler: 3517993387919063686 (Unbehandelte Ausnahme #30D26C58E116BA86) (Deadlock) kommt nicht mehr.
Dafür haben wir 2 neue: 2926052268158166098 (Unbehandelte Ausnahme #289B6D08F5CB2452) (Deadlock, kommt häufig)
und 4377567335319638393 (Unbehandelte Ausnahme #3CC03E4C52149179) (System.ArgumentException: picklisteKey must not be a new id, kommt selten)
z.B. Heute (gerade):
kErrorlog cRechnername dErstelltUtc nIstWorker nFehlerID
256 PACKTISCH05 2020-07-27 09:27:57.263 0 2926052268158166098
245 PACKTISCH03 2020-07-27 09:21:38.943 0 2926052268158166098
246 PACKTISCH06 2020-07-27 09:15:38.123 0 2926052268158166098
257 PACKTISCH07 2020-07-27 09:09:18.930 0 2926052268158166098
258 PACKTISCH04 2020-07-27 09:03:39.290 0 2926052268158166098
248 PACKTISCH01 2020-07-27 08:37:43.163 0 2926052268158166098
 

Anhänge

frankw

Moderator
Mitarbeiter
15. Dezember 2017
652
234
Hürth
Danke für das erneute Feedback!

Wir schauen uns das nochmal an. Ich habe zwei Bug-Tickets angelegt.

Gruß,
Frank
 
  • Gefällt mir
Reaktionen: mvh
Status
Es sind keine weiteren Antworten möglich.

Ähnliche Themen