Problem with reconnection of NAV2016 client causing it's crash

Kaschi_CZEKaschi_CZE Member Posts: 1
edited 2017-01-03 in NAV Three Tier
Hello,

I'm facing a problem with reconnecting to the NAV server after the session timeout.

Problem description:

After upgrading from NAV2009 to NAV2016, we have encountered a problem, which causes some issues for the users. In NAV2009 if the client timed out, it was able to connect to the server and restore the session. However, NAV2016 client isn't able to reconnect to the server. It does offer the possibility to reconnect, but it fails and causes the client to crash into
Process isn’t responding
.

This is the first alert window user encounters after timing out:
Microsoft Dynamics NAV
---------------------------
The server "……." is either unavailable or your connection has been lost. Do you want to attempt to reconnect?
---------------------------
Yes   No   
---------------------------
If user clicks yes, following alert window shows up:
---------------------------
 Microsoft Dynamics NAV
---------------------------
 The session could not be retrieved from the server. The application will close.
---------------------------
 OK   
--------------------------- 
If user clicks no, following alert box shows up:
[Window Title]
Microsoft.Dynamics.Nav.Client
[Main Instruction]
Microsoft.Dynamics.Nav.Client has stopped working
[Content]
Windows can check online for a solution to the problem.
[V] View problem details [Check online for a solution and close the program] [Close the program]

Both alert windows can be displayed after clicking both of the buttons (YES/NO)

Is there a way to set the client or the server to shut itself down without crashing (meaning to shut down normally just with a message)?

Question:

Can the client/server be set up is some way that he doesn’t offer the possibility to reconnect and simply closes the connection with a simple error message like in the given example?

Service settings:
Build: 9.0.46773.0
Other settings in attachment

EDIT:

Further details
What was changed in settings:
We only changed the Iddle Client Timeout and Keep Alive Interval to match the values from previouse NAV2009 version
Crash log from evens
Type: Microsoft.Dynamics.Nav.Client.NavClientClosingException
Fatal: False
ShowError: True
Message: The session could not be retrieved from the server. The application will close.
StackTrace:
     at Microsoft.Dynamics.Nav.Client.WinClient.ExceptionHandler.DoExecute(Func`1 execute)
     at Microsoft.Dynamics.Nav.Client.WinClient.ExceptionHandler.DoRethrowWithCatchException(Exception exception, Boolean designMode)
     at Microsoft.Dynamics.Nav.Client.WinClient.ExceptionHandler.WinFormsDispatcherUnhandledException(Object sender, DispatcherUnhandledExceptionEventArgs eventArgs)
     at Microsoft.Dynamics.Framework.UI.WinForms.WinFormsDispatcher.HandleDispatcherException(Object sender, Exception e)
     at System.Windows.Forms.Application.ThreadContext.OnThreadException(Exception t)
     at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
     at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
     at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr 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 Microsoft.Dynamics.Nav.Client.WinClient.NavWinFormsClientSession.RunMessagePump()
     at Microsoft.Dynamics.Nav.Client.WinClient.NavWinFormsClientSession.RunCore()
     at Microsoft.Dynamics.Nav.Client.WinClient.NavClientErrorHandler.ExecuteAndCatchExceptions(Func`1 execute)
Source: Microsoft.Dynamics.Nav.Client.WinClient
HResult: -2146233088
----------------------------------
Type: Microsoft.Dynamics.Nav.Types.NavConnectionLostException
Message: The session could not be retrieved from the server. The application will close.
StackTrace:
     at Microsoft.Dynamics.Nav.Client.WinClient.ExceptionHandler.<>c__DisplayClass6.<DoRethrowWithCatchException>b__4()
     at Microsoft.Dynamics.Nav.Client.WinClient.NavClientErrorHandler.ExecuteAndCatchExceptions(Func`1 execute)
Source: Microsoft.Dynamics.Nav.Client.WinClient
HResult: -2146233088
----------------------------------
Type: Microsoft.Dynamics.Nav.Types.NavConnectionLostException
Message: The session could not be retrieved from the server. The application will close.
StackTrace:
     at Microsoft.Dynamics.Nav.Client.ConnectionStateManager.ServerReconnectLoop(DateTime gracePeriodEnd)
     at Microsoft.Dynamics.Nav.Client.ConnectionStateManager.Reconnect(Boolean timeout)
     at Microsoft.Dynamics.Nav.Client.ConnectionStateManager.HandleCommunicationFailure[T](BeginCallServerMethod beginCallServerMethod, EndCallServerMethod`1 endCallServerMethod, ServerCallOptions options, Exception e, Int32 messageNumber, String sessionId)
     at Microsoft.Dynamics.Nav.Client.ConnectionStateManager.CallServer[T](BeginCallServerMethod beginCallServerMethod, EndCallServerMethod`1 endCallServerMethod, ServerCallOptions options)
     at Microsoft.Dynamics.Nav.Client.ServiceConnection.CallServer[T](BeginCallServerMethod beginCallServerMethod, EndCallServerMethod`1 endCallServerMethod)
     at Microsoft.Dynamics.Nav.Client.ServiceConnectionBase.DrilldownField(NavRecordState& state, NavDataSet recDataSet, Int32 controlId)
     at Microsoft.Dynamics.Nav.Client.DataBinder.NstDataAccess.DrillDownField(String personalizationId, String controlName)
     at Microsoft.Dynamics.Nav.Client.Actions.NavDrilldownAction.InvokeDataAction(LogicalControl logicalControl, UISession uiSession)
     at Microsoft.Dynamics.Nav.Client.Actions.PageDataAction.InvokeCore(LogicalControl logicalControl, Object state, UISession uiSession)
     at Microsoft.Dynamics.Framework.UI.LogicalAction.InvokeCoreWithErrorHandling(LogicalControl logicalControl, Object state, UISession uiSession)
     at Microsoft.Dynamics.Framework.UI.LogicalAction.DoInvoke(LogicalControl logicalControl, UISession uiSession)
     at Microsoft.Dynamics.Framework.UI.ActionControl.Invoke()
     at Microsoft.Dynamics.Framework.UI.Windows.ActionsHelper.ModalitySafe(Action action)
     at Microsoft.Dynamics.Framework.UI.Windows.ActionControlAdapterBase.DefaultInvokeAction(LogicalControlAdapter adapter, ActionControl actionControl)
     at Microsoft.Dynamics.Framework.UI.WinForms.Controls.ImageLinkLabel.OnClick(EventArgs e)
     at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
     at System.Windows.Forms.Control.WndProc(Message& m)
     at System.Windows.Forms.Label.WndProc(Message& m)
     at Microsoft.Dynamics.Framework.UI.WinForms.Controls.ImageLinkLabel.WndProc(Message& m)
     at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Source: Microsoft.Dynamics.Nav.Client.ServiceConnection
HResult: -2146233088
Best regards,
Lukas

Answers

  • krikikriki Member, Moderator Posts: 9,094
    [Topic moved from 'NAV/Navision Classic Client' forum to 'NAV Three Tier' forum]

    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • greatscott001greatscott001 Member Posts: 32
    Did you ever solve this?
Sign In or Register to comment.