<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://vistapedia.com/index.php?action=history&amp;feed=atom&amp;title=VISTA_XWB_Broker_Troubleshooting</id>
	<title>VISTA XWB Broker Troubleshooting - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://vistapedia.com/index.php?action=history&amp;feed=atom&amp;title=VISTA_XWB_Broker_Troubleshooting"/>
	<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=VISTA_XWB_Broker_Troubleshooting&amp;action=history"/>
	<updated>2026-05-10T13:59:05Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://vistapedia.com/index.php?title=VISTA_XWB_Broker_Troubleshooting&amp;diff=15858&amp;oldid=prev</id>
		<title>Shabiel: /* Broker Logging */</title>
		<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=VISTA_XWB_Broker_Troubleshooting&amp;diff=15858&amp;oldid=prev"/>
		<updated>2013-07-22T22:05:55Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Broker Logging&lt;/span&gt;&lt;/p&gt;
&lt;a href=&quot;https://vistapedia.com/index.php?title=VISTA_XWB_Broker_Troubleshooting&amp;amp;diff=15858&amp;amp;oldid=15856&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Shabiel</name></author>
	</entry>
	<entry>
		<id>https://vistapedia.com/index.php?title=VISTA_XWB_Broker_Troubleshooting&amp;diff=15856&amp;oldid=prev</id>
		<title>Shabiel: /* Troubleshooting */</title>
		<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=VISTA_XWB_Broker_Troubleshooting&amp;diff=15856&amp;oldid=prev"/>
		<updated>2013-07-22T18:36:52Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Troubleshooting&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:36, 22 July 2013&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l57&quot;&gt;Line 57:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 57:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Troubleshooting ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Troubleshooting ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=== Environment Check and Unit Test ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The broker can fail at several points. All of them are covered by an environment check that either Wally or Joel wrote: &amp;lt;code&amp;gt;D CHECK^XWBTCPMT&amp;lt;/code&amp;gt;. Here&amp;#039;s an example:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The broker can fail at several points. All of them are covered by an environment check that either Wally or Joel wrote: &amp;lt;code&amp;gt;D CHECK^XWBTCPMT&amp;lt;/code&amp;gt;. Here&amp;#039;s an example:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l94&quot;&gt;Line 94:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 95:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;If this call succeeds (and you need to make sure that this is indeed the right port that hooks up to your VISTA system), then you are now certain that the new style broker works to some extent.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;If this call succeeds (and you need to make sure that this is indeed the right port that hooks up to your VISTA system), then you are now certain that the new style broker works to some extent.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=== Broker Logging ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;If you have further issues, the easiest way to troubleshoot them is to turn on broker logging, like this:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;If you have further issues, the easiest way to troubleshoot them is to turn on broker logging, like this:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l171&quot;&gt;Line 171:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 173:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Some essential parts to understand: a byte that is &amp;lt;code&amp;gt;x04&amp;lt;/code&amp;gt; (\04) always ends a message. A byte &amp;quot;f&amp;quot; means it&amp;#039;s the end of the argument. The item just before the argument is the argument length (&amp;lt;code&amp;gt;006&amp;lt;/code&amp;gt;). The client creates this message. Therefore, if this message is not created properly at the client, it won&amp;#039;t be read properly by VISTA.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Some essential parts to understand: a byte that is &amp;lt;code&amp;gt;x04&amp;lt;/code&amp;gt; (\04) always ends a message. A byte &amp;quot;f&amp;quot; means it&amp;#039;s the end of the argument. The item just before the argument is the argument length (&amp;lt;code&amp;gt;006&amp;lt;/code&amp;gt;). The client creates this message. Therefore, if this message is not created properly at the client, it won&amp;#039;t be read properly by VISTA.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=== Foreground Debugging of Broker Calls ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Last but not least, for desperate debuggers, you can put breakpoints in your current process and run the listener process in the foreground and then connect your client. You will hit the breakpoint:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Last but not least, for desperate debuggers, you can put breakpoints in your current process and run the listener process in the foreground and then connect your client. You will hit the breakpoint:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Shabiel</name></author>
	</entry>
	<entry>
		<id>https://vistapedia.com/index.php?title=VISTA_XWB_Broker_Troubleshooting&amp;diff=15855&amp;oldid=prev</id>
		<title>Shabiel: Created page with &quot;== Starting the Broker == On GT.M, to start the broker, you need to create an OS service (Xinetd on Linux) that calls &lt;code&gt;GTMLNX^XWBTCPM&lt;/code&gt;.  On Cache, you can start a b...&quot;</title>
		<link rel="alternate" type="text/html" href="https://vistapedia.com/index.php?title=VISTA_XWB_Broker_Troubleshooting&amp;diff=15855&amp;oldid=prev"/>
		<updated>2013-07-19T22:45:23Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Starting the Broker == On GT.M, to start the broker, you need to create an OS service (Xinetd on Linux) that calls &amp;lt;code&amp;gt;GTMLNX^XWBTCPM&amp;lt;/code&amp;gt;.  On Cache, you can start a b...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Starting the Broker ==&lt;br /&gt;
On GT.M, to start the broker, you need to create an OS service (Xinetd on Linux) that calls &amp;lt;code&amp;gt;GTMLNX^XWBTCPM&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
On Cache, you can start a broker listener using the start-up file ZSTU by calling this: &amp;lt;code&amp;gt;J ZISTCP^XWBTCPM1(&amp;lt;port no&amp;gt;):&amp;quot;&amp;lt;namespace&amp;gt;&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On Cache, you can also fill out the RPC Broker Site Parameters file like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Select OPTION NAME: XWB MENU       RPC Broker Management Menu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
          RPC Listener Edit&lt;br /&gt;
          Start All RPC Broker Listeners&lt;br /&gt;
          Stop All RPC Broker Listeners&lt;br /&gt;
          Clear XWB Log Files&lt;br /&gt;
          Debug Parameter Edit&lt;br /&gt;
          View XWB Log&lt;br /&gt;
&lt;br /&gt;
Select RPC Broker Management Menu &amp;lt;TEST ACCOUNT&amp;gt; Option: RPC LISTener Edit&lt;br /&gt;
&lt;br /&gt;
Select RPC BROKER SITE PARAMETERS DOMAIN NAME: ?&lt;br /&gt;
    Answer with RPC BROKER SITE PARAMETERS DOMAIN NAME, or STATUS:&lt;br /&gt;
   VISTA.PLATINUM    &lt;br /&gt;
    &lt;br /&gt;
Select RPC BROKER SITE PARAMETERS DOMAIN NAME:    VISTA.PLATINUM &lt;br /&gt;
Select BOX-VOLUME PAIR: ICARUS:icarus// &lt;br /&gt;
  BOX-VOLUME PAIR: ICARUS:icarus// &lt;br /&gt;
  Select PORT: 9000&lt;br /&gt;
  Are you adding &amp;#039;9000&amp;#039; as a new PORT (the 1ST for this LISTENER)? No// Y&lt;br /&gt;
  (Yes)&lt;br /&gt;
    STATUS: STOPPED// &lt;br /&gt;
    TYPE OF LISTENER: ?&lt;br /&gt;
     Choose from: &lt;br /&gt;
       0        Original&lt;br /&gt;
       1        New Style&lt;br /&gt;
    TYPE OF LISTENER: 1  New Style&lt;br /&gt;
    CONTROLLED BY LISTENER STARTER: ?&lt;br /&gt;
     Choose from: &lt;br /&gt;
       0        NO&lt;br /&gt;
       1        YES&lt;br /&gt;
    CONTROLLED BY LISTENER STARTER: 1  YES&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then ask Taskman to start this upon Taskman start-up, by creating this entry in file 19.2:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
OUTPUT FROM WHAT FILE: OPTION SCHEDULING// &lt;br /&gt;
Select OPTION SCHEDULING NAME:    XWB LISTENER STARTER&lt;br /&gt;
ANOTHER ONE: &lt;br /&gt;
STANDARD CAPTIONED OUTPUT? Yes//   (Yes)&lt;br /&gt;
Include COMPUTED fields:  (N/Y/R/B): NO//  - No record number (IEN), no Computed&lt;br /&gt;
 Fields&lt;br /&gt;
&lt;br /&gt;
NAME: XWB LISTENER STARTER              SPECIAL QUEUEING: STARTUP&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you start taskman from ZSTU using &amp;lt;code&amp;gt;J ^ZTMB:&amp;quot;&amp;lt;namespace&amp;gt;&amp;quot;&amp;lt;/code&amp;gt;, the broker will be started by taskman.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
The broker can fail at several points. All of them are covered by an environment check that either Wally or Joel wrote: &amp;lt;code&amp;gt;D CHECK^XWBTCPMT&amp;lt;/code&amp;gt;. Here&amp;#039;s an example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GTM&amp;gt;D CHECK^XWBTCPMT&lt;br /&gt;
&lt;br /&gt;
This will check for some of the errors that can prevent the Broker&lt;br /&gt;
from getting started.&lt;br /&gt;
&lt;br /&gt;
Debugging is set to Very Verbose&lt;br /&gt;
Broker activity timeout is set to 180&lt;br /&gt;
Checking can Write to null device&lt;br /&gt;
The NULL device is OK.&lt;br /&gt;
Checking if new JOB&amp;#039;s can start.&lt;br /&gt;
New jobs are allowed.&lt;br /&gt;
Done with the checks.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
From the above, you can glean why a broker might not start or accept connections:&lt;br /&gt;
# The VOLUME multiple in the Kernel System Parameters isn&amp;#039;t filled out properly.&lt;br /&gt;
# The VOLUME SET file has the disable flag set to yes.&lt;br /&gt;
# There is more than one NULL device or no NULL device.&lt;br /&gt;
# Your Mumps Implementation license doesn&amp;#039;t allow you to start a new job.&lt;br /&gt;
# $$ACTJ^%ZOSV says you ran out of licenses.&lt;br /&gt;
&lt;br /&gt;
In the same routine, there is also a broker tester to test your broker system by connecting to it, only you are doing it directly from Mumps. Here&amp;#039;s an example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GTM&amp;gt;D CALL^XWBTCPMT&lt;br /&gt;
&lt;br /&gt;
Interactive Broker Test&lt;br /&gt;
IP ADDRESS: 127.0.0.1&lt;br /&gt;
PORT: 9200&lt;br /&gt;
Success, response: accept&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If this call succeeds (and you need to make sure that this is indeed the right port that hooks up to your VISTA system), then you are now certain that the new style broker works to some extent.&lt;br /&gt;
&lt;br /&gt;
If you have further issues, the easiest way to troubleshoot them is to turn on broker logging, like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GTM&amp;gt;S DUZ=1 D ^XUP&lt;br /&gt;
&lt;br /&gt;
Setting up programmer environment&lt;br /&gt;
This is a TEST account.&lt;br /&gt;
&lt;br /&gt;
Terminal Type set to: C-VT220&lt;br /&gt;
&lt;br /&gt;
Select OPTION NAME: XWB MENU       RPC Broker Management Menu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
          RPC Listener Edit&lt;br /&gt;
          Start All RPC Broker Listeners&lt;br /&gt;
          Stop All RPC Broker Listeners&lt;br /&gt;
          Clear XWB Log Files&lt;br /&gt;
          Debug Parameter Edit&lt;br /&gt;
          View XWB Log&lt;br /&gt;
&lt;br /&gt;
Select RPC Broker Management Menu &amp;lt;TEST ACCOUNT&amp;gt; Option: DEBUG Parameter Edit&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-------- Setting RPCBroker debug logging  for System: FOIA.PLATINUM  --------&lt;br /&gt;
Enable Broker Logging: very Verbose// ?&lt;br /&gt;
&lt;br /&gt;
Enter a code from the list.&lt;br /&gt;
&lt;br /&gt;
     Select one of the following:&lt;br /&gt;
&lt;br /&gt;
          0         No&lt;br /&gt;
          1         Yes&lt;br /&gt;
          2         Verbose&lt;br /&gt;
          3         very Verbose&lt;br /&gt;
&lt;br /&gt;
Enable Broker Logging: very Verbose// 3  very Verbose&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After you do that, you need to clear the old logs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Select RPC Broker Management Menu &amp;lt;TEST ACCOUNT&amp;gt; Option: CLEAR XWB Log Files&lt;br /&gt;
Remove all XWB log entries? No// YES&lt;br /&gt;
Done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, perform the connection, replicate the error that you encounter, and then check-out the broker logs using the option &amp;#039;View XWB Log&amp;#039;. A good familiarity with the broker TCP protocol will help you understand it; here&amp;#039;s an excerpt:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Log from Job 4115 25 Lines&lt;br /&gt;
09:43:36 = Log start: Apr 09, 2012@09:43:36&lt;br /&gt;
09:43:36 = XWBTCPM&lt;br /&gt;
09:43:36 = rd: [XWB]&lt;br /&gt;
09:43:36 = MSG format is [XWB] type NEW&lt;br /&gt;
09:43:36 = rd: 1030&lt;br /&gt;
09:43:36 = rd: 4&lt;br /&gt;
09:43:36 = rd: \10&lt;br /&gt;
09:43:36 = rd: TCPConnect&lt;br /&gt;
09:43:36 = CMD: TCPConnect&lt;br /&gt;
09:43:36 = rd: 5&lt;br /&gt;
09:43:36 = rd: 0&lt;br /&gt;
09:43:36 = rd: 012&lt;br /&gt;
09:43:36 = rd: 192.168.0.17&lt;br /&gt;
09:43:36 = rd: f&lt;br /&gt;
09:43:36 = rd: 0&lt;br /&gt;
09:43:36 = rd: 001&lt;br /&gt;
09:43:36 = rd: 0&lt;br /&gt;
09:43:36 = rd: f&lt;br /&gt;
09:43:36 = rd: 0&lt;br /&gt;
09:43:36 = rd: 006&lt;br /&gt;
09:43:36 = rd: icarus&lt;br /&gt;
09:43:36 = rd: f&lt;br /&gt;
09:43:36 = rd: \04&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some essential parts to understand: a byte that is &amp;lt;code&amp;gt;x04&amp;lt;/code&amp;gt; (\04) always ends a message. A byte &amp;quot;f&amp;quot; means it&amp;#039;s the end of the argument. The item just before the argument is the argument length (&amp;lt;code&amp;gt;006&amp;lt;/code&amp;gt;). The client creates this message. Therefore, if this message is not created properly at the client, it won&amp;#039;t be read properly by VISTA.&lt;br /&gt;
&lt;br /&gt;
Last but not least, for desperate debuggers, you can put breakpoints in your current process and run the listener process in the foreground and then connect your client. You will hit the breakpoint:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
GTM&amp;gt;D DEBUG^XWBTCPM&lt;br /&gt;
&lt;br /&gt;
Before running this entry point set your debugger to stop at&lt;br /&gt;
the place you want to debug. Some spots to use:&lt;br /&gt;
&amp;#039;SERV+1^XWBTCPM&amp;#039;, &amp;#039;MAIN+1^XWBTCPM&amp;#039; or &amp;#039;CAPI+1^XWBPRS.&amp;#039;&lt;br /&gt;
&lt;br /&gt;
or location of your choice.&lt;br /&gt;
&lt;br /&gt;
IP Socket to Listen on: &amp;lt;etc&amp;gt;...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Shabiel</name></author>
	</entry>
</feed>