How the Janus Debugger handles communication breaks: Difference between revisions

From m204wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 14: Line 14:
<span class="term">info</span><span class="f_Para"> is one of the following: </span>
<span class="term">info</span><span class="f_Para"> is one of the following: </span>


* <span class="f_EmphBold">An existing connection was forcibly closed by the remote host</span><span class="f_ListBul1"> </span>
* <b>An existing connection was forcibly closed by the remote host</b>
 
: In this case, the network connection between the PC and the Online is lost, or the Debugger Server port is not started.  
<span class="f_ListContinue">In this case, the network connection between the PC and the Online is lost, or the Debugger Server port is not started. </span>
: If the Debugger Client was in the process of debugging code, the next Client operation you attempt produces a Client message like the following, and Communication Error is displayed in the [[Status bar|Status bar]]:  
 
<span class="f_ListContinue">If the Debugger Client was in the process of debugging code, the next Client operation you attempt produces a Client message like the following, and </span><span class="f_Monospace">Communication Error</span><span class="f_ListContinue"> is displayed in the [[Status bar|Status bar]]: </span>


[[File:commerror7b1_zoom70.gif|428x117px|commError7b1]]<span class="f_ListContinue"> </span>
[[File:commerror7b1_zoom70.gif|428x117px|commError7b1]]<span class="f_ListContinue"> </span>


<span class="f_ListContinue">Clicking </span><span class="f_GUIlabel">OK</span><span class="f_ListContinue"> here removes the message, but processing cannot continue until the connection to the Online is reestablished or the Debugger port on the Online is restarted. There is no need to recycle the Debugger Client, although any program that was being processed is discarded. </span>
: Clicking <var>OK</var><span class="f_ListContinue"> here removes the message, but processing cannot continue until the connection to the Online is reestablished or the Debugger port on the Online is restarted. There is no need to recycle the Debugger Client, although any program that was being processed is discarded. </span>
 
: If the browser was waiting while the Debugger Client was processing, it continues to wait. If no debugging was in process, and the browser sends a new request to the Web Server, the browser is sent a reply from the Client like the following:  
<span class="f_ListContinue">If the browser was waiting while the Debugger Client was processing, it continues to wait. If no debugging was in process, and the browser sends a new request to the Web Server, the browser is sent a reply from the Client like the following: </span>


[[File:commerr3a_zoom60.gif|500x246px|commErr3a]]<span class="f_ParaNoLead"> </span>
[[File:commerr3a_zoom60.gif|500x246px|commErr3a]]<span class="f_ParaNoLead"> </span>


<span class="f_ListContinue">Once the broken connection is reestablished, debugging continues when the browser sends or resends a request. There is no need to recycle the browser.</span>
: Once the broken connection is reestablished, debugging continues when the browser sends or resends a request. There is no need to recycle the browser.


* <span class="f_EmphBold">Worker thread lost</span><span class="f_ListBul1"> </span>
* <b>Worker thread lost</b>
 
: The Web Server or Debugger Server encounters a <var>Model 204</var> or <span class="f_Product">Janus</span> error while doing work for the Client, leaving the Client in an extended waiting state (<span class="f_Monospace">Waiting for Online</span> is displayed in the Status bar).
<span class="f_ListContinue">The Web Server or Debugger Server encounters a </span><var>Model 204</var><span class="f_ListContinue"> or </span><span class="f_Product">Janus</span><span class="f_ListContinue"> error while doing work for the Client, leaving the Client in an extended waiting state (</span><span class="f_Monospace">Waiting for Online</span><span class="f_ListContinue"> is displayed in the Status bar). </span>


[[File:waiton3dfrag_zoom50.gif|423x130px|waiton3dfrag]]<span class="f_ListContinue"> </span>
[[File:waiton3dfrag_zoom50.gif|423x130px|waiton3dfrag]]<span class="f_ListContinue"> </span>
Line 40: Line 36:
[[File:commerror7a_zoom70.gif|312x118px|commError7a]]<span class="f_ListContinue"> </span>
[[File:commerror7a_zoom70.gif|312x118px|commError7a]]<span class="f_ListContinue"> </span>


<span class="f_ListContinue">Shortly thereafter, the Client resumes processing, and the browser waits and follows its own timeout default. </span>
: Shortly thereafter, the Client resumes processing, and the browser waits and follows its own timeout default.  


<span class="f_Para">You can review</span><span class="f_ListContinue"> the </span><span class="f_GUIlabel">Audit Trail</span><span class="f_ListContinue"> page for information to help locate the error in the Online processing. </span>
<span class="f_Para">You can review</span><span class="f_ListContinue"> the </span><var>Audit Trail</var><span class="f_ListContinue"> page for information to help locate the error in the Online processing. </span>


=== An existing connection was forcibly closed by the remote host ===
=== An existing connection was forcibly closed by the remote host ===
Line 49: Line 45:


* <span class="f_ListBul1">An external connection to the browser is broken. </span>
* <span class="f_ListBul1">An external connection to the browser is broken. </span>
 
: As a new browser session begins, the Debugger processing is halted and a Communication Error message like the following is displayed:  
<span class="f_ListContinue">As a new browser session begins, the Debugger processing is halted and a Communication Error message like the following is displayed: </span>


[[File:commerr6a_zoom60.gif|679x442px|commErr6a]]<span class="f_ListContinue"> </span>
[[File:commerr6a_zoom60.gif|679x442px|commErr6a]]<span class="f_ListContinue"> </span>


<span class="f_ListContinue">In its role as the browser's proxy, the Debugger Client has received an error notification from a site that the browser has contacted, say to load an image, as part of its normal setup and home page presentation. </span>
: In its role as the browser's proxy, the Debugger Client has received an error notification from a site that the browser has contacted, say to load an image, as part of its normal setup and home page presentation.  
 
: Such errors are infrequent and usually harmless, and clicking <var>OK</var> releases the Debugger to continue processing.  
<span class="f_ListContinue">Such errors are infrequent and usually harmless, and clicking </span><span class="f_GUIlabel">OK</span><span class="f_ListContinue"> releases the Debugger to continue processing. </span>


* <span class="f_ListBul1">The browser breaks the connection to the Debugger Client.  </span>
* <span class="f_ListBul1">The browser breaks the connection to the Debugger Client.  </span>
 
: As the Debugger Client is processing code that a Janus Web Server sends in response to a browser request, a user sends another browser request (or the browser sends a scheduled polling request). The Client-browser socket gets broken, and the Client displays a message like the one shown above. When you click the message <var>OK</var><span class="f_ListContinue"> button, the Client-browser socket gets reestablished.  </span>
<span class="f_ListContinue">As the Debugger Client is processing code that a Janus Web Server sends in response to a browser request, a user sends another browser request (or the browser sends a scheduled polling request). The Client-browser socket gets broken, and the Client displays a message like the one shown above. When you click the message </span><span class="f_GUIlabel">OK</span><span class="f_ListContinue"> button, the Client-browser socket gets reestablished.  </span>


=== The Debugger Client is not available ===
=== The Debugger Client is not available ===

Latest revision as of 15:14, 7 April 2023

If the Janus Debugger is not properly configured or if communication between any of its components is lost, the Debugger Client or the browser or both will display error messages and will attempt to restore normal operation, typically without requiring a recycling of any of the components.

In most cases, as long as the Debugger Client itself is not the problem, these communication breaks are signaled by the Client with a Communication Error message box and the display of Communication Error in the Status bar.

This section describes the most likely types of communication breaks (not related to product configuration) and how the Debugger responds. The subsections below (except for the last) are organized by the Client's Communication Error message:

Invalid response from debugger: info
An existing connection was forcibly closed by the remote host
The Debugger Client is not available

Invalid response from debugger: info

info is one of the following:

  • An existing connection was forcibly closed by the remote host
In this case, the network connection between the PC and the Online is lost, or the Debugger Server port is not started.
If the Debugger Client was in the process of debugging code, the next Client operation you attempt produces a Client message like the following, and Communication Error is displayed in the Status bar:

commError7b1

Clicking OK here removes the message, but processing cannot continue until the connection to the Online is reestablished or the Debugger port on the Online is restarted. There is no need to recycle the Debugger Client, although any program that was being processed is discarded.
If the browser was waiting while the Debugger Client was processing, it continues to wait. If no debugging was in process, and the browser sends a new request to the Web Server, the browser is sent a reply from the Client like the following:

commErr3a

Once the broken connection is reestablished, debugging continues when the browser sends or resends a request. There is no need to recycle the browser.
  • Worker thread lost
The Web Server or Debugger Server encounters a Model 204 or Janus error while doing work for the Client, leaving the Client in an extended waiting state (Waiting for Online is displayed in the Status bar).

waiton3dfrag

In such a case, the Server eventually times out (two minutes), and the Client displays Communication Error in the Status bar as well as an error message box like the following:

commError7a

Shortly thereafter, the Client resumes processing, and the browser waits and follows its own timeout default.

You can review the Audit Trail page for information to help locate the error in the Online processing.

An existing connection was forcibly closed by the remote host

Two cases of these browser problems follow:

  • An external connection to the browser is broken.
As a new browser session begins, the Debugger processing is halted and a Communication Error message like the following is displayed:

commErr6a

In its role as the browser's proxy, the Debugger Client has received an error notification from a site that the browser has contacted, say to load an image, as part of its normal setup and home page presentation.
Such errors are infrequent and usually harmless, and clicking OK releases the Debugger to continue processing.
  • The browser breaks the connection to the Debugger Client.  
As the Debugger Client is processing code that a Janus Web Server sends in response to a browser request, a user sends another browser request (or the browser sends a scheduled polling request). The Client-browser socket gets broken, and the Client displays a message like the one shown above. When you click the message OK button, the Client-browser socket gets reestablished.  

The Debugger Client is not available

Browser requests return a "cannot find server" or "proxy server is unavailable" message like the following when the Debugger Client goes down or is not started:

commErr4

commErr4d

Once the Debugger Client becomes available, debugging continues when the browser sends or resends a request. There is no need to recycle the browser.