Gelöst Fehler bei Update: Die Verbindung zur Datenbank wurde unterbrochen

t.oster

Gut bekanntes Mitglied
4. Dezember 2013
210
24
Hallo zusammen,

ich bekomme beim Update von 1.3.20 auf sowohl 1.4.35, als auch 1.5.6 am Ende des Update Prozesses beim Punkt "Abschließende Änderungen: Komprimierung der HTML Templaterenderer" den Fehler "Die Verbindung zur Datenbank wurde unterbrochen".
Ich führe das Update in unserer Testumgebung durch (MSSQL 2017 in Docker auf Linux) und es schlägt zuverlässig an dieser Stelle fehl.
Die Datenbank meldet kein Problem. Ich habe bereits vorher in der 1.3.20 eine Bereinigung, Reparatur und Performance Optimierung durchgeführt, ändert aber nichts.

Gibt es irgendwelche Timeout Settings, die ich verlängern kann, oder irgendwo genauer debuggen, wo es hängt? Das interessante ist, dass es immer bei diesem Punkt stehen bleibt.
 

Anhänge

  • AAA_Wawi-1.5.update fehler.png
    AAA_Wawi-1.5.update fehler.png
    76,9 KB · Aufrufe: 51
  • Gefällt mir
Reaktionen: sah

t.oster

Gut bekanntes Mitglied
4. Dezember 2013
210
24
Hier der Stack-Trace. Ich habe den Kompatibilitätsgrad jetzt mal auf Server 2012 (von 2017) heruntergestellt, es bricht immer noch ab, diesmal bei "Umwandeln der Vorlagen":

Unbehandelte Ausnahme #5129778C3CC22D42 vom Typ System.Data.SqlClient.SqlException in Boolean TryGetConnection(System.Data.Common.DbConnection, UInt32, Boolean, Boolean, System.Data.Common.DbConnectionOptions, System.Data.ProviderBase.DbConnectionInternal ByRef)
System.Data.SqlClient.SqlException (0x80131904): Verbindungstimeout abgelaufen. Das Timeout ist aufgetreten, während die Bestätigung des Handshakes vor der Anmeldung verarbeitet wurde. Möglicherweise ist ein Fehler beim Handshake vor der Anmeldung aufgetreten, oder der Server hat nicht rechtzeitig geantwortet. Folgende Verbindungszeiten wurden bei dem Versuch benötigt, eine Verbindung mit diesem Server herzustellen: [Vor Anmeldung] Initialisierung=7098; Handshake=4923; ---> System.ComponentModel.Win32Exception (0x80004005): Der Wartevorgang wurde abgebrochen
bei System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
bei System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
bei System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
bei System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
bei System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
bei System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
bei System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
bei System.Data.SqlClient.SqlConnection.Open()
bei JTL.Database.DatabaseConnection.Open()
bei JTL.Database.DbConnectionExtensions.Execute[T](IDbConnection connection, Func`2 func, ConnectionBehavior behavior)
bei JTL.Database.DbConnectionExtensionsType.Fill(IDbConnection connection, IDbResult target, IDbCommand command, MissingPropertiesAction missingPropertiesAction, IResultSetReaderStrategy resultSetReaderStrategy)
bei JTL.Database.Commands.Entities.DbFillByQueryCommand.Execute(IDatabaseConnection connection)
bei jtlDatabase.jtlObjectRepositoryBase.AppendAll[T](IList`1 items, String query, IEnumerable`1 parameters)
bei jtlDatabase.jtlObjectList`1.appendListFromDB(String sqlQuery, MissingPropertiesMode handleMissingProperties, jtlDBParameter[] oDBParameter_arr)
bei jtlDatabase.classes.jtlDBClasses.jtlUpdatelogList.GetUpdateLogsAfterPrimaryKey(Int32 afterPrimaryKey)
bei jtlCore.Classes.Update.UpdateController.Update(SqlUpdateChangelog sqlUpdateChangelogForm, UpdateInfo updateInfo)
bei jtlCore.Classes.Update.UpdateController.UpdateDatabase(SqlUpdateChangelog sqlUpdateChangelogForm, SqlConnectionStringBuilder csb, UpdateMenue updateMenue)
bei jtlCore.Classes.Update.UpdateController.<>c__DisplayClass27_0.<StartUpdateActionOnRun>b__2()
bei System.Threading.Tasks.Task.InnerInvoke()
bei System.Threading.Tasks.Task.Execute()
ClientConnectionId:a3256871-85ec-4b81-b8cb-60728c125113
Fehlernummer (Error Number):-2,Status (State):0,Klasse (Class):11
SQL-Fehlerinformationen: [wawidb,1434 .Net SqlClient Data Provider] Fehler #-2 (Klasse 11) in Zeile 0: Verbindungstimeout abgelaufen. Das Timeout ist aufgetreten, während die Bestätigung des Handshakes vor der Anmeldung verarbeitet wurde. Möglicherweise ist ein Fehler beim Handshake vor der Anmeldung aufgetreten, oder der Server hat nicht rechtzeitig geantwortet. Folgende Verbindungszeiten wurden bei dem Versuch benötigt, eine Verbindung mit diesem Server herzustellen: [Vor Anmeldung] Initialisierung=7098; Handshake=4923;
HelpLink.ProdName = Microsoft SQL Server
HelpLink.EvtSrc = MSSQLServer
HelpLink.EvtID = -2
HelpLink.BaseHelpUrl = http://go.microsoft.com/fwlink
HelpLink.LinkId = 20476
ConnectionString = Data Source=wawidb,1434;Initial Catalog=eazybusiness;Integrated Security=False;Persist Security Info=True;User ID=sa;Password=****************;MultipleActiveResultSets=True;Connect Timeout=5;Application Name="JTL-Wawi C#";Current Language=German

Unbehandelte Ausnahme #78911B1A1A80C010 vom Typ System.ComponentModel.Win32Exception in : Der Wartevorgang wurde abgebrochen
 

Rico Giesler

Offizieller Service Partner
SPBanner
10. Mai 2017
13.247
1.526
Hast du dazu mal ein Ticket im Kundencenter erstellt?
Die Kollegen aus der Fachabteilung für Datenbanken kann dir da wahrscheinlich am ehesten weiterhelfen.
 

t.oster

Gut bekanntes Mitglied
4. Dezember 2013
210
24
Kann ich den Thread irgendwie selbst als gelöst markieren, oder kann das nur ein Admin?
 

Ähnliche Themen