RTC, Datenbankverbindung verloren

16. Juli 2013 15:22

Hallo zusammen,

ich habe ein etwas seltsam anmutendes Problem:

Beim Postenausgleich bekommt ein Kunde die Meldung: "The server "net.tcp://servername:7046/DynamicsNAV/Service" is either unavailable or your connection has been lost. Do you want do attempt to reconnect?"

Der Fehler tritt nur sporadisch auf und bei wechselnden Benutzern.

Technische Umgebung (soweit bekannt)

Windows Server 2008 Enterprise mit SP1 32bit
Thin Clients und "normale" Workstations

Bei den Clients ist es egal, ob sich der Benutzer mit dem ThinClient verbindet oder einen PC benutzt.

Hat jemand eine Idee, wo ich hier ansetzen kann? Vielen dank.
Kai

Re: RTC, Datenbankverbindung verloren

16. Juli 2013 15:27

kaisz hat geschrieben:Hat jemand eine Idee, wo ich hier ansetzen kann?

Prüfe, was in der Ereignisanzeige des Clientrechners steht. Manchmal kann man da eine halbwegs sprechende Fehlermeldung herauslesen oder zumindest die grobe Richtung bestimmen.
Außerdem solltest du die MS Knowledge Base nach dieser Fehlermeldung durchsuchen (verwende hierzu am besten die erweiterte Suchfunktion der PartnerSource).

Re: RTC, Datenbankverbindung verloren

16. Juli 2013 21:53

Sind irgendwelche Individualprogrammierungen in diesem Bereich gemacht worden?

Re: RTC, Datenbankverbindung verloren

19. Juli 2013 11:38

Leider habe ich nach wie vor noch das Problem, die KB Artikel konnten mir nicht so richtig helfen. Ebenfalls hat ein löschen der Daten aus der Tabelle "Object Metadata" mit anschl. Neukompilierung nichts gebracht.

Ich vermute, dass es ein sehr spezielles Problem ist, den wir haben den entsprechenden Code um die 100x im Einsatz und er läuft überall problemlos.

Gibt es noch weitere Anregungen / Lösungsansätze?

Re: RTC, Datenbankverbindung verloren

19. Juli 2013 11:41

Natalie Fragte schon nach der Ereignisanzeige, was steht denn da drin?

Gruß, Fiddi

Re: RTC, Datenbankverbindung verloren

26. Juli 2013 09:57

So, hat etwas gedauert, aber hier ist jetzt eIN Auszug aus dem Protokoll:

Type: Microsoft.Dynamics.Nav.Client.NavClientClosingException Message: The connection to the server has been lost. The application will close. StackTrace: at Microsoft.Dynamics.Nav.Client.ExceptionHandler.DoExecute(Func`1 execute) at Microsoft.Dynamics.Nav.Client.ExceptionHandler.DoRethrowWithCatchException(Exception exception) at Microsoft.Dynamics.Nav.Client.ExceptionHandler.Application_ThreadException(Object sender, ThreadExceptionEventArgs e) at System.Windows.Forms.Application.ThreadContext.OnThreadException(Exception t) at System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg) at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FPreTranslateMessage(MSG& msg) at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData) at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.Run(ApplicationContext context) at Microsoft.Dynamics.Nav.Client.WinClient.RunCore() at Microsoft.Dynamics.Nav.Client.ExceptionHandler.ExecuteAndCatchExceptions(Func`1 execute) at Microsoft.Dynamics.Nav.Client.ExceptionHandler.DoExecute(Func`1 execute) at Microsoft.Dynamics.Nav.Client.WinClient.Run() Source: Microsoft.Dynamics.Nav.Client ---------------------------------- Type: Microsoft.Dynamics.Nav.Types.NavConnectionLostException Message: The connection to the server has been lost. The application will close. StackTrace: at Microsoft.Dynamics.Nav.Client.ExceptionHandler.<>c__DisplayClass2.<DoRethrowWithCatchException>b__0() at Microsoft.Dynamics.Nav.Client.ExceptionHandler.ExecuteAndCatchExceptions(Func`1 execute) Source: Microsoft.Dynamics.Nav.Client ---------------------------------- Type: Microsoft.Dynamics.Nav.Types.NavConnectionLostException Message: The connection to the server has been lost. The application will close. StackTrace: at Microsoft.Dynamics.Nav.Client.ConnectionStateManager.HandleCommunicationFailure[T](CallServerMethod`1 callServerMethod, Exception e, Int32 messageNumber, String sessionId) at Microsoft.Dynamics.Nav.Client.ConnectionStateManager.CallServer[T](CallServerMethod`1 callServerMethod) at Microsoft.Dynamics.Nav.Client.ServerInvocationHandler.CallServer[T](CallServerMethod`1 callServerMethod) at Microsoft.Dynamics.Nav.Client.ServiceConnectionBase.CallServer[T](CallServerMethod`1 callServerMethod) at Microsoft.Dynamics.Nav.Client.ServiceConnection.InvokeApplicationMethod(ApplicationCodeType objectType, Int32 objectId, String methodName, NavDataSet& dataSet, NavRecordState& state, Object[]& args) at Microsoft.Dynamics.Nav.Client.DataBinder.NstDataAccess.InvokeApplicationMethod(ApplicationCodeType type, Int32 objectId, String name, DataAccessOperation operation, NavRecord record, NavRecord xrec, Object[] args) at Microsoft.Dynamics.Nav.Client.DataBinder.NstDataAccess.InvokeCodeUnit(ApplicationCodeType type, Int32 objectId, String name, Object[] args) at Microsoft.Dynamics.Nav.Client.Actions.InvokeCodeUnitAction.InvokeCore(Boolean async, LogicalControl logicalControl, Object state, UISession uiSession) at Microsoft.Dynamics.Framework.UI.Action.InvokeCoreWithErrorHandling(Boolean async, LogicalControl logicalControl, Object state, UISession uiSession) at Microsoft.Dynamics.Framework.UI.Action.DoInvoke(LogicalControl logicalControl, UISession uiSession) at Microsoft.Dynamics.Framework.UI.ActionControl.Invoke() at Microsoft.Dynamics.Framework.UI.Windows.ActionControlAdapterBase.DefaultInvokeAction(LogicalControlAdapter adapter, ActionControl actionControl) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKeyInActionControl(ActionControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKey(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKeyInChildren(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKey(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKeyInChildren(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKey(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKeyInChildren(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKey(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKeyInChildren(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKeyAll(LogicalControl control, ShortcutKeys keys) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessShortcutKeyInLogicalControlsFromCurrentControl(Keys keyData) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.ProcessKey(Keys keyData) at Microsoft.Dynamics.Framework.UI.WinForms.LogicalFormAdapter.BusinessForm_PreviewProcessCmdKey(Object sender, HandledPreviewKeyDownEventArgs e) at Microsoft.Dynamics.Framework.UI.WinForms.Controls.BusinessForm.OnPreviewProcessCmdKey(HandledPreviewKeyDownEventArgs e) at Microsoft.Dynamics.Framework.UI.WinForms.Controls.BusinessForm.ProcessCmdKey(Message& msg, Keys keyData) at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData) at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData) at Microsoft.Dynamics.Framework.UI.WinForms.Controls.DirectionalLayoutPanel.ProcessCmdKey(Message& msg, Keys keyData) at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData) at Microsoft.Dynamics.Framework.UI.WinForms.Controls.DirectionalLayoutPanel.ProcessCmdKey(Message& msg, Keys keyData) at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData) at Microsoft.Dynamics.Framework.UI.WinForms.Controls.DirectionalLayoutPanel.ProcessCmdKey(Message& msg, Keys keyData) at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData) at Microsoft.Dynamics.Framework.UI.WinForms.Controls.DirectionalLayoutPanel.ProcessCmdKey(Message& msg, Keys keyData) at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData) at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData) at Microsoft.Dynamics.Framework.UI.WinForms.Controls.BusinessGridView.ProcessCmdKey(Message& msg, Keys keyData) at System.Windows.Forms.Control.PreProcessMessage(Message& msg) at System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg) at System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg) Source: Microsoft.Dynamics.Nav.Client.ServiceConnection ----------------------------------

Re: RTC, Datenbankverbindung verloren

26. Juli 2013 12:13

Was sagt die Ereignisanzeige auf der Service Tier?

Welcher Build wird eingesetzt?

Re: RTC, Datenbankverbindung verloren

26. Juli 2013 12:57

Das Gemeine an dieser speziellen Fehlermeldung ist, dass sie irreführend ist. Ich hatte diese schon mehrfach in der Praxis gesehen, und Auslöser war nie der Verlust der Verbindung, sondern ein Stück C/AL-Code oder eine gesetzte Eigenschaft, z.B. in einem Pagefeld.

Konntet ihr schon irgendeine Gemeinsamkeit feststellen, also wen es betrifft oder wann es auftritt? Weil scheinbar ja nicht bei jedem einzelnen Postenausgleich?