Skip to content
This repository was archived by the owner on Jan 21, 2022. It is now read-only.
This repository was archived by the owner on Jan 21, 2022. It is now read-only.

Application crashes after a long while of inactivity because SSH connection timed out #122

Description

@RillJ

`

<SCRIPT>
function Toggle(node)
{
  if (!window.fullyLoaded) return;

  // Expand the branch?
  if (node.nextSibling.style.display == 'none')
  {
    // Change the sign from "+" to "-".
    var tBodyNode = node.childNodes[0];
    var trNode = tBodyNode.childNodes[0];
    var tdNode = trNode.childNodes[0];
    var bNode = tdNode.childNodes[0];
    var textNode = bNode.childNodes[0];
    if (textNode.nodeType == 3 /* Node.TEXT_NODE */) {
      var s = textNode.data;
      if (s.length > 0 && s.charAt(0) == '+') {
        textNode.data = '-' + s.substring(1, s.length);
      }
    }

    // show the branch
    node.nextSibling.style.display = '';
  }
  else // Collapse the branch
  {
    // Change the sign from "-" to "+".
    var tBodyNode = node.childNodes[0];
    var trNode = tBodyNode.childNodes[0];
    var tdNode = trNode.childNodes[0];
    var bNode = tdNode.childNodes[0];
    var textNode = bNode.childNodes[0];
    if (textNode.nodeType == 3 /* Node.TEXT_NODE */) {
      var s = textNode.data;
      if (s.length > 0 && s.charAt(0) == '-') {
        textNode.data = '+' + s.substring(1, s.length);
      }
    }

    // hide the branch
    node.nextSibling.style.display = 'none';
  }
}

// Toggle "System" element by default so that it's default status is to hide its children
function ToggleSystemElement()
{
  var body = document.getElementById("body");
  var anchor = body.getElementsByTagName("table")[0];
  Toggle(anchor);
}

// If binary data is present in event XML, show it in friendly form.
function ProcessBinaryData(binaryString, binaryDataCaption, wordsFormatString, bytesFormatString, normalFont, fixedWidthFont)
{
  var bodyNode = document.getElementById("body");

  // Add a <hr> at the end of the HTML body.
  bodyNode.appendChild(document.createElement("hr"));      

  // This paragraph (p element) is the "Binary data:" literal string.
  var p = document.createElement("p");
  p.style.fontFamily = normalFont;
  var b = document.createElement("b");
  b.appendChild(document.createTextNode(binaryDataCaption));
  p.appendChild(b);
  p.appendChild(document.createElement("br"));
  bodyNode.appendChild(p);

  //
  // Show binary data in Words format.
  //
  p = document.createElement("p");
  p.style.fontFamily = normalFont;
  p.appendChild(document.createTextNode(wordsFormatString));
  bodyNode.appendChild(p);

  // Must use fixed-width font for binary data.
  p = document.createElement("p");
  p.style.fontFamily = fixedWidthFont;

  var i = 0;
  var j = 0;
  var s, tempS;
  var translatedString;
  var charCode;
  var byte1, byte2;

  // Each character in binaryString is a hex (16-based) representation of
  // 4 binary bits. So it takes 2 characters in binaryString to form a
  // complete byte; 4 characters for a word.
  while (i < binaryString.length) {

    s = (i / 2).toString(16);    // To hex representation.
    while (s.length < 4) {
      s = "0" + s;
    }
    s += ": ";

    // DWords representation is simply a rearrangement of the original binaryString
    // For example, from:
    // 
    // 0000000002005600000000000f000540
    //
    // (which is 00 00 00 00 02 00 56 00 00 00 00 00 0f 00 05 40).
    //
    // to:
    //
    // 0000: 00000000 00560002 00000000 4005000f
    // 8 words per line, 4 DWords per line.
    for (j = 0; j < 4; j++) {
      s += binaryString.substring(i + 6, i + 8);
      s += binaryString.substring(i + 4, i + 6);
      s += binaryString.substring(i + 2, i + 4);
      s += binaryString.substring(i, i + 2) + " ";
      i += 8;
    }

    p.appendChild(document.createTextNode(s));
    p.appendChild(document.createElement("br"));
  }

  bodyNode.appendChild(p);

  //
  // Show binary data in bytes format.
  //
  p = document.createElement("p");
  p.style.fontFamily = normalFont;
  p.appendChild(document.createTextNode(bytesFormatString));
  bodyNode.appendChild(p);

  // Must use fixed-width font for binary data.
  p = document.createElement("p");
  p.style.fontFamily = fixedWidthFont;

  i = 0;
  j = 0;

  // Each character in binaryString is a hex (16-based) representation of
  // 4 binary bits. So it takes 2 characters in binaryString to form a
  // complete byte.
  while (i < binaryString.length) {
    translatedString = "";
    // 2 characters in binaryString to form a byte
    s = (i / 2).toString(16);   // to hex representation.

    // Prefix with '0' until its length is 4.
    while (s.length < 4) {
      s = "0" + s;
    }
    s += ": ";

    // Show 8 bytes per line
    for (j = 0; j < 8; j++) {
      tempS = binaryString.substring(i, i + 2); // 2 for 1 byte
      i += 2;
      s += tempS + " ";

      // Treat tempS as hex integer
      charCode = parseInt(tempS, 16);
      if (charCode < 32) {
        translatedString += ".";
      } else {
        translatedString += String.fromCharCode(charCode);
      }
    }

    while (s.length < 32) {
      s += " ";
    }
    s += translatedString;
    
    p.appendChild(document.createTextNode(s));
    p.appendChild(document.createElement("br"));
  }

  bodyNode.appendChild(p);
}
</SCRIPT>
Application: Stugether.exe CoreCLR Version: 4.700.21.41101 .NET Core Version: 3.1.19 Description: The process was terminated due to an unhandled exception. Exception Info: System.Data.SqlClient.SqlException (0x80131904): Connection Timeout Expired. The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement. This could be because the pre-login handshake failed or the server was unable to respond back in time. The duration spent while attempting to connect to this server was - [Pre-Login] initialization=44; handshake=14964; ---> System.ComponentModel.Win32Exception (258): The wait operation timed out. at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) at System.Data.SqlClient.SqlConnection.Open() at Dapper.SqlMapper.ExecuteCommand(IDbConnection cnn, CommandDefinition& command, Action`2 paramReader) in /_/Dapper/SqlMapper.cs:line 2847 at Dapper.SqlMapper.ExecuteImpl(IDbConnection cnn, CommandDefinition& command) in /_/Dapper/SqlMapper.cs:line 581 at Dapper.SqlMapper.Execute(IDbConnection cnn, String sql, Object param, IDbTransaction transaction, Nullable`1 commandTimeout, Nullable`1 commandType) in /_/Dapper/SqlMapper.cs:line 452 at Gateway.AccountDataAccess.CreateAccount(String email, String password, String verificationCode) at ViewModel.RegisterViewModel.CreateAccountInDatabase() at ViewModel.Commands.RelayCommand.<>c__DisplayClass3_0.<.ctor>b__0(Object parameter) at ViewModel.Commands.RelayCommand.Execute(Object parameter) at MS.Internal.Commands.CommandHelpers.CriticalExecuteCommandSource(ICommandSource commandSource, Boolean userInitiated) at System.Windows.Controls.Primitives.ButtonBase.OnClick() at System.Windows.Controls.Button.OnClick() at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e) at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e) at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget) at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent) at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e) at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget) at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args) at System.Windows.Input.InputManager.ProcessStagingArea() at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input) at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport) at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel) at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs) at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame) at System.Windows.Threading.Dispatcher.Run() at System.Windows.Application.RunDispatcher(Object ignore) at System.Windows.Application.RunInternal(Window window) at System.Windows.Application.Run() at View.App.Main() ClientConnectionId:c77a976f-03d9-456a-9fe7-3a816dc462f6 Error Number:-2,State:0,Class:11
`

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions