<HTML>
<HEAD>

<!--Please be sure to customize the meta data below for the page-->
    <meta name="description" content="support, support home">
    <meta name="keywords" content="support, support home">
    <meta name="author" content="">
    <meta name="rev_author" content="">
    <meta name="new" content="24-04-2000">
    <meta name="updated" content="04-10-2000">
    <meta name="expires" content="31-12-2000">
    <meta name="audience" content="EXT_ALL">
    <meta name="format" content="html">
    <meta http-equiv="pragma" content="NO-CACHE">
    <meta http-equiv="expires" content=-1>
    <meta name="alternate_title" content="Welcome to Compaq Support">
	
<!--Please be sure to customize the title below appropriately for the page-->
	<title></title>

<!--The include file below contains scripts and meta information that is common to all support pages-->

<SCRIPT LANGUAGE="JavaScript">
<!--

// rev03.29.1999 -- DO NOT MODIFY! -- Begin date display function with y2k compatibility


function OpenNewWin(url_name)
{
    popup_height = 465;             // height of popup window
    popup_width = 300;             // width of popup window
    window.name = "MainWin";
    left_pos = screen.width - (popup_width+10);

    attr = 
"scrollbars=0,resizable=1,toolbar=0,location=0,directories=0,status=1,menubar=0,height=" 
+ popup_height + ",width=" + popup_width + ",top=0,left=" + left_pos;
    popup_win = window.open(url_name, "popup", attr);
    popup_win.focus();
}



var pong;

function makeArray(n){
  this.length = n;
  for (i=1;i<=n;i++){
    this[i]=0;
  }
  return this;
}

function displayDate() {
	var this_month = new makeArray(12);
    this_month[0]  = "January";
    this_month[1]  = "February";
    this_month[2]  = "March";
    this_month[3]  = "April";
    this_month[4]  = "May";
    this_month[5]  = "June";
    this_month[6]  = "July";
    this_month[7]  = "August";
    this_month[8]  = "September";
    this_month[9]  = "October";
    this_month[10] = "November";
    this_month[11] = "December";
	var today = new Date();
	var day   = today.getDate();
	var month = today.getMonth();
	var year  = today.getYear();
	if (year< 1900) {
		year += 1900;
	}
  return(this_month[month]+" "+day+", "+year);
}
// rev03.29.1999 -- DO NOT MODIFY! -- End date display function with y2k compatibility


// -->
</SCRIPT>


<STYLE TYPE="text/css">
<!--
.noul { color:#000033; text-decoration:none; }
.news { color:#660066; text-decoration:none; }
a:hover { color:#FF0000; }
-->
</STYLE>

<!--Begin legacy css stylesheet-->
<STYLE type="text/css">
<!--
a.linkage:hover {
   color: #FF0000;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration: underline;
}
a.linkage {
   color: #660066;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration:underline;
   cursor:hand;
}
a.linkagesub:hover {
   color: #FF0000;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration: underline;
}
a.linkagesub {
   color: #660066;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration:underline;
   cursor:hand;
}
a.footage:hover {
   color: #FF0000;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration: underline;
}
a.footage {
   color: #660066;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration:underline;
   cursor:hand;
}
a.current:hover {
   color: #FF0000;
   font-size: 11px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration: none;
}
a.current {
   font-family: verdana,sans-serif;
   font-weight: normal;
   font-size: 11px;
   color: #660066;
   text-decoration:none;
   cursor:hand;
}
a.spotage:hover {
   color: #FF0000;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration: underline;
}
a.spotage {
   color: #660066;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration:underline;
   cursor:hand;
}
.spot {
   color: #000000;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration: none;
}
a.body:hover {
   font-family: verdana,sans-serif;
   font-weight: normal;
   font-size: 10px;
   color: #0000ff;
   text-decoration: underline;
   cursor:hand;
}
a.body {
   color: #0000ff;
   font-family: verdana,sans-serif;
   font-size: 10px;
   font-weight: normal;
   text-decoration: underline;
}
a.on {
   color: #660066;
   font-family: verdana,sans-serif;
   font-size: 10px;
   font-weight: normal;
   text-decoration: underline;
}
a.on:hover {
   color: #FF0000;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration: underline;
   cursor:hand;
}
a.onsub {
   color: #660066;
   font-size: 10px;
   font-family: verdana,sans-serif;
   font-weight: normal;
   text-decoration: underline;
}
a.onsub:hover {
   color: #FF0000;
   font-family: verdana,sans-serif;
   font-size: 10px;
   font-weight: normal;
   text-decoration: underline;
   cursor:hand;
}
.reg {
   color: #000033;
   font-family: verdana,sans-serif;
   font-size: 10px;
   font-weight: normal;
   text-decoration: none;
}
#APD {
	POSITION: relative; VISIBILITY: hidden;
-->
</STYLE>
<!--End legacy css stylesheet-->
<!--end head_universal include-->



</HEAD>

<BODY MARGINHEIGHT="0" TOPMARGIN=0 BGCOLOR="#ffffff" TEXT="#333333" LINK="#660066" VLINK="#000033" ALINK="#003399" onLoad="if (self != top) top.location = self.document.location;">

<!--The include file below contains top navigation that is common to all support pages-->
<!--Begin topnav universal include-->
<!-- rev03.29.1999 -- DO NOT MODIFY! -- Begin universal nav map -->
<MAP Name="nav">
	<AREA Shape="RECT" coords="373,11,413,21"   
  HREF="http://www.compaq.com/search.html" ALT="SEARCH" TITLE="SEARCH">
	<AREA Shape="RECT" coords="295,11,357,21"  HREF="http://www.compaq.com/comments.html" ALT="CONTACT US" TITLE="CONTACT US">
	<AREA Shape="RECT" coords="230,11,278,21"  HREF="http://www.compaq.com/support/" ALT="SUPPORT" TITLE="SUPPORT">
	<AREA Shape="RECT" coords="167,11,213,21"   
  HREF="http://www.compaq.com/compaqservices/" ALT="SERVICES" TITLE="SERVICES">
	<AREA Shape="RECT" coords="97,11,151,21"  HREF="http://www.compaq.com/showroom/" ALT="PRODUCTS" TITLE="PRODUCTS">
	<AREA Shape="RECT" coords="48,11,80,21"  HREF="http://www.compaq.com/buynow/online.html" ALT="STORE" TITLE="STORE">
</MAP>
<!-- rev03.29.1999 -- DO NOT MODIFY! -- End universal nav map -->

<!-- rev03.29.1999 -- DO NOT MODIFY! -- Begin datestamp table -->
<TABLE BORDER="0" cellpadding="0" cellspacing="0" width="760">
	<TR valign="top" align="right">
		<TD ALIGN="right" width="760"><FONT FACE="Verdana, Arial, Helvetica" SIZE="2" COLOR="#333333">
		United States&nbsp;&nbsp;&nbsp;&nbsp;
		<script language="JavaScript"><!-- 
		document.write (displayDate()); 
		//--></script></FONT></TD>
	</TR>
</TABLE>
<!-- rev03.29.1999 -- DO NOT MODIFY! -- End datestamp table -->

<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0" WIDTH="760">
	<!-- rev03.29.1999 -- DO NOT MODIFY! -- Begin universal nav -->
	<TR>
		<TD WIDTH="174"><A href="/"><IMG alt=COMPAQ border=0 height=30 src="/images/compaq.gif" width=174></A></TD>
		<TD width="586" BGCOLOR="#000033" ALIGN="right"><IMG alt="STORE | PRODUCTS | SERVICES | SUPPORT | CONTACT US | SEARCH" border=0 height=30 ismap src ="/images/top_nav.gif" useMap="#nav" width=420></TD>
	</TR>
	<!-- rev03.29.1999 -- DO NOT MODIFY! -- End universal nav -->
</TABLE>
<!--End topnav universal include-->


<!--Begin masthead table-->
<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0" WIDTH="760">
	<TR>	
<TD VALIGN="top" ALIGN="right">

<!--Begin headline images-->
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td valign="top"><img border="0" src="/images/h_sw_patches.gif" alt="" width="510" height="72"></td>
<td><img border="0" src="/images/h_photo_softwarendrivers.gif" alt="gears" width="178" height="68"><br>
<img border="0" src="/images/accent.gif" width="178" height="9" alt=""></td>
</tr>
</table>
<!--End headline images-->

</TD>
	</TR>
</TABLE>
<!--End masthead table-->

<img src="/images/spacer.gif" width="1" height="15" alt="">

<!-- Begin body table -->
<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0" width="760">
	<TR>
		<!-- Begin left column -->
		<TD BGCOLOR="#999999" width="180" ALIGN="left" VALIGN="top">

<!--The include file embedded below contains an extensible set of left navigation items common to all support pages -->
<!-- Add your items below the include statement for extensibility-->
<!-- start local nav //-->
						
						<table cellSpacing="0" cellPadding="0" border="0" width="180" bgcolor="#999999" valign="top">
<!-- top blue row -->
				            <TR><TD BGCOLOR="#000033"><IMG SRC="/images/spacer.gif" WIDTH="1" HEIGHT="10" BORDER="0" alt=""></TD></TR>
							<tr><td bgcolor="#888888"><img src="/images/pix.gif" height="1" width="180" border="0" alt=""></td></tr>
<!-- end blue row -->
							<tr bgcolor="#999999">
								<td width="180" align="left" valign="top">
									<table cellPadding="0" cellSpacing="0" border="0" align="left" valign="top" width="180">
										<tr>
												<td bgcolor="#999999" width="5" align="left" valign="top"><img src="/images/pix.gif" width="5" height="1" border="0" alt=""></td>
												<td bgcolor="#999999" width="175" align="left" valign="top">
												<table width="175" align="left" cellPadding="0" cellSpacing="0" border="0">
													<tr>
														<td align="left" valign="top" width="10"><img src="/images/pix.gif" width="10" height="15" border="0" alt=""></td>
														<td align="left" valign="top" width="165"><img src="/images/pix.gif" width="1" height="10" border="0" alt=""></td>
													</tr>
										

													
													
<!-- banner-->
																								
													<tr>
														<TD colspan="2" VALIGN="TOP"><img src="/images/leftnav.gif" width=150 height=18 border=0 ALT="compaq support options" TITLE="compaq support options"></TD>
													</TR>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
<!-- banner -->										
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- first line local nav //-->							<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="on" href="http://www.compaq.com/support/">support home</a></td>
													</tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- second line local nav //-->						<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/support/files/">software &amp; drivers</a></font></td>
													</tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- third line local nav //-->							<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/support/ask/">ask Compaq</a></font></td>
													</tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- fourth line local nav //-->						<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/support/reference/">reference library</a></font></td>
													</tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- fifth line local nav //-->						    <td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://forum.compaq.com">support forum</a></font></td>
													</tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- sixth line local nav //-->							<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://web14.compaq.com/falco/">frequently asked questions</a></font></td>
													</tr>
												    <tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- seventh line local nav //-->						<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/support/tools/">support tools</a></font></TD>
													</tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- eighth line local nav //-->						<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/support/warranty_upgrades/">warranty information</a></font></td>
													</tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- ninth line local nav //-->							<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://compaq.infonow.net/bin/findNow?CLIENT_ID=COMPAQ_BUS_USA&MARKET=SERVICE">service centers</a></font></td>
													</tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- tenth line local nav //-->							<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/support/contact_compaq/">contact support</a></font></td>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- eleventh line local nav //-->						<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/support/default.asp">product resources</a></font></td>
													</tr>
												    <tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
												    <tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- twelfth line local nav //-->						<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/support/parts/">parts for your system</a></font></TD>
													</tr>
<!-- thirteenth line local nav //-->
<!--
												    <tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
                               					        <td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="http://www.compaq.com/csa/">development support</a></font></td>
													</tr>
-->
												    <tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
<!-- fourteenth line local nav //-->					<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="javascript: OpenNewWin('http://www3itg.compaq.com/support/feedback/givefeedback.asp?page_referer=<%= Request.ServerVariables(url)%>')">give us feedback</a></font></td>
													</tr>



<!-- begin country-specific links 
Use these lines to structure your own links //-->
	
<!--
												<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
													<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="">Country link #1</a></font></td>
													</tr>


												<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr>
							                            <TD VALIGN="TOP" WIDTH="4"><IMG SRC="/images/arrow_blue.gif" WIDTH="4" HEIGHT="6" BORDER="0" VSPACE="3"></TD>
													<td align="left" valign="top"><font size="1" face="verdana,Arial,Helvetica"><a class="linkage" href="">Country link #1</a></font></td>
													</tr>




-->
<!-- end country-specific links //-->	
<!-- spacer rows -->

													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>
													<tr><td><img src="/images/pix.gif" width="1" height="10" border="0"></td><td></td></tr>




				<TR>
					<TD COLSPAN="2" ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="2"><IMG SRC="/images/associated_links.gif" ALT="associated links"></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www.support.compaq.com/patches/whats-new.shtml">what's new</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www.support.compaq.com/patches/contract.shtml">contract access</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www.support.compaq.com/pub-ftp-tree">browse patch tree</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www.support.compaq.com/patch-search">search patches</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www.support.compaq.com/patches/mailing-list.shtml">join mailing list</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www.support.compaq.com/feedback.shtml">feedback</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="15"></TD></TR>
				<TR>
					<TD COLSPAN="2" ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="2"><IMG SRC="/images/patches_by_topic.gif" ALT="patches by topic"></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://ftp.support.compaq.com/patches/.new/dos.shtml">DOS</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://ftp.support.compaq.com/patches/.new/openvms.shtml">OpenVMS</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://ftp.support.compaq.com/patches/.new/security.shtml">Security</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://ftp.support.compaq.com/patches/.new/unix.shtml">Tru64 Unix</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://ftp.support.compaq.com/patches/.new/ultrix.shtml">Ultrix 32</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://ftp.support.compaq.com/patches/.new/windows.shtml">Windows</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://ftp.support.compaq.com/patches/.new/WindowsNT.shtml">Windows NT</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="15"></TD></TR>
				<TR>
					<TD COLSPAN="2" ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="2"><IMG SRC="/images/connection_tools.gif" ALT="connection tools"></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www1.support.compaq.com/cgi-bin/lookup-them.cgi">nameserver lookup</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www1.support.compaq.com/cgi-bin/trace-them.cgi">traceroute</A></FONT></TD>
				</TR>
				<TR><TD COLSPAN="2" BGCOLOR="#999999"><IMG SRC="/images/dot.gif" ALT="." WIDTH="1" HEIGHT="5"></TD></TR>
				<TR>
					<TD VALIGN="TOP" BGCOLOR="#999999"><IMG SRC="/images/arrow.gif" ALT="}" WIDTH="16" HEIGHT="10"></TD>
					<TD ALIGN="LEFT" VALIGN="MIDDLE" BGCOLOR="#999999"><FONT FACE="arial, helvetica" SIZE="1"><A HREF="http://www1.support.compaq.com/cgi-bin/ping-them.cgi">ping</A></FONT></TD>
				</TR>
						</TABLE></TD></TR>
						</TABLE></TD></TR>
						</TABLE>


<!-- end local nav //-->
<!--The include file below contains a left navigation column common to all support pages-->
		
		</td>
		<!-- End left column -->

		<!-- Begin spacer column -->
		<td valign="top" width="10">
			<img src="/images/spacer.gif" width="10" height="1" border="0" alt="">
		</td>
		<!-- End spacer column -->
		
<!--Begin main body content area-->
		<!-- Begin content column -->
		<td valign="top" width="570">

        <div align="left">
        <table border="0" cellpadding="0" cellspacing="0" width="100%">
        <tr>
        <td valign="top">

<!-- INSERT YOUR CONTENT BELOW THIS POINT-->
<pre>
<center><b><font color=black>
RTR V3.1D] RTRVVME014D Reliable Trans. Router V3.1D (VAX) ECO Summary
</font></b></center><p>
TITLE: RTR V3.1D] RTRVVME014D Reliable Trans. Router V3.1D (VAX) ECO Summary
 
Copyright (c) Compaq Computer Corporation 1998, 1999.  All rights reserved.

Modification Date:  18-JUN-1999
Modification Type:  Updated Kit:  Supersedes RTRVVME010D

PRODUCT:     Reliable Transaction Router V3.1D for OpenVMS VAX (RTR)

OP/SYS:      OpenVMS VAX

COMPONENTS:  RTR.EXE
             LIBRTR.EXE

SOURCE:      Compaq Computer Corporation

ECO INFORMATION:

     ECO Kit Name:  RTRVVME014D
     ECO Kits Superseded by This ECO Kit: RTRVVME010D
                                          RTRVVME08D
     ECO Kit Approximate Size:  6521 Blocks
                             3338752 Bytes

     Kit Applies To:  RTR V3.1D for OpenVMS VAX
                      OpenVMS VAX V6.1, V6.2, V7.0, V7.1, 7.2
     System/Cluster Reboot Necessary:  No
     Installation Rating:  INSTALL_UNKNOWN

     Kit Dependencies:

       The following remedial kit(s) must be installed BEFORE
       installation of this kit:

         None

       In order to receive all the corrections listed in this
       kit, the following remedial kits should also be installed:

         None


ECO KIT SUMMARY:

An ECO kit exists for Reliable Transaction Router on OpenVMS VAX V6.1
through V7.2.  This kit addresses the following problems:

Problems Addressed in the RTRVVME014D Kit:

  o  14-1-239 WSAEventSelect 10055 knl_env line 1339

     RTR was not handling some errors that could be returned when 
     an asynchronous DECnet line would shut down. 

  o  14-3-118 TX on pri_act not being played on sec_act

     If RTR is configured with servers on backends that are running
     DECnet Phase V, then under certain conditions, local recovery 
     from the remote node's journal would not be performed. For 
     example, local and shadow recovery would appear to work correctly 
     in a shadow server configuration after the primary shadow would 
     go down, but in actual fact any transactions in the remote node's 
     journal would not be recovered.  This can only occur if the 
     backends are all using DECnet Phase V as the primary RTR transport, 
     and if the DECnet addresses of the nodes concerned match a particular 
     pattern. Note that this is a static DECnet configuration issue. If 
     recovery works in your particular configuration, then it will always 
     work as long as the DECnet network configuration is not changed.  

  o  14-3-124   Bug in V2 load balance

     In earlier versions of RTR, it was occasionally possible for
     a router to become permanently incapable of accepting new
     incoming frontend connections if router load-balancing had
     been enabled by specifying the /BALANCE qualifier, and a frontend
     happened to connect to the router during a quorum state transition.

  o  14-3-131   $DCL_TX_PRC crash when no privs

     Running a V2 application from an account that does not have RTR 
     info privilege no longer causes the application to crash.

  o  14-3-132   Extend journal failure

     Previous versions of RTR would suffer from a crash of the rtr acp 
     process if the RTR journal had been created with /MAXIMUM_BLOCKS 
     greater than /BLOCKS and RTR attempted to extend the journal beyond 
     the initial size. 

  o  14-3-134  More Broadcast message counters required

     Various counters connected with the delivery of broadcast events 
     have been added:  Facility counters fdb_cn_bm_transit_brd_lost and
     fdb_cn_bm_transit_brd_delivered, link counters ndb_cn_bm_transit_lost 
     and ndb_cn_bm_transit_delivered, and process counters bm_brd_lost and
     bm_brd_delivered.

  o  14-3-140  RTR V3 $DCL_TX_PRC does not complete correctly when no 
               TXSB is supplied

     Using the V2 API verbs on V3 would not always generate the same
     result as V2 when using undeclared or invalid channels. 

  o  14-3-150  RTR applications hang on trying to continue after ACP 
               restarted
   	
     If the application tries to open a channel again after seeing
     the status RTR_STS_ACPNOTVIA, it hangs on the subsequent
     rtr_receive_message call. This affects applications on threaded
     RTR platforms, especially Win32 and AIX.

     If the application tried to open a channel again after seeing
     the status RTR_STS_ACPNOTVIA it could hang on the subsequent
     rtr_receive_message call. This problem has been corrected for
     threaded UNIX platforms. It is no longer necessary to restart
     any RTR application for UNIX after restarting RTR.

  o  14-3-151  'signed' identifier not in VAX C

     For previous versions of RTR, compiling RTR applications with
     the VAX C compiler generated compiler errors, since the VAX C
     compiler does not recognize the 'signed' keyword used in RTR.H.

     The signed keyword is no longer defined in RTR.H if compiling 
     with the VAX C compiler.

  o  14-3-161  MONITOR CALLS/ID=n where 'n' is not a valid id - 
     monitors all ids

     Use of the monitor command with any of the qualifers /link,
     /process, /facility or /partition would generate an empty display
     if the requested entity did not exist. This was unlike V2
     behavior, and was considered by some to be misleading. V2
     behavior has been restored.

  o  14-3-165  Shadow servers experience deadlock using 2 partitions

     If two shadowed server partitions were set up with primary
     and secondary roles transposed on the two backends involved
     and the servers for these partitions acccessed the same database
     rows it was occasionally possible for a distributed deadlock to
     occur in which servers on each site waited forever for locks
     held by the primary server for the other partition to be released.

  o  14-3-167  Corruption in large monitor pictures

     Spurious and missing characters were seen in larger monitor 
     pictures displayed to a terminal window or terminal. The 
     corruption was particularly dramatic if a terminal escape 
     sequence was affected.

     The corruption appeared to occur when more than 8k of data was 
     buffered without a newline or explicit flush, e.g. when monitoring 
     with a recent kit in which Rtr terminal output was changed to 
     line-buffered for efficiency.  The output always seemed to be 
     correct when using MONITOR /OUTPUT, or when monitoring remotely 
     from an RTR platform other than VAX, or when buffering more than 
     BUFSIZ 64k of output on OpenVMS Alpha.

     Investigation so far indicates that Rtr was buffering the output 
     correctly, and that there would seem to be an error in the OpenVMS 
     VAX runtime libraries.  RTR now flushes output more frequently so 
     as not to provoke this problem.

  o  14-3-168  How to calculate required quotas?

     There is no easy way to calculate the required UAF and SYSGEN 
     parameters needed by RTR.

     The following information may be used to estimate virtual
     memory size requirements of the RTR ACP process.

     The base virtual memory requirement of an unconfigured RTR
     ACP process is approximately 5.8 Mbytes. To this should be added
     allowances for the following:

       - for each link, add 202 kBytes
       - for each facility, add 13 kBytes, plus 80 bytes for each
         link in the facility
       - for each client or server application process, add 190 kBytes
         for the first channel
       - for each additional application channel, add 1350 bytes

     It is also necessary to make allowance for the number of active
     transactions in the system. Unless your client applications are
     programmed to initiate multiple concurrent transactions, this
     number will not exceed the total number of client channels in the
     system, but you should verify this with your application providers.
     It is also necessary to determine the size of the transaction
     messages in use.

     For each frontend:

       - add 1 kByte per active transaction
       - add 250 bytes per message per transaction
       - plus the size of all the messages

     For transaction routers, allow about 1 kByte for each active
     transaction.

     For backends, allow:

      - 1 kByte per active transaction
      - 50 bytes for each message of a transaction.
      - plus to size of all replies

     The total of all contributions detailed above will yield an 
     estimate of the likely virtual memory requirements of the ACP. 
     Apply a large factor for safety - it is better to grant RTR 
     resource limits exceeding its real requirements than to risk 
     a loss of service in production as a result of insufficient 
     resource allocation. Divide the result by VM size in pages to 
     obtain the virtual memory requirement.

     You should set process memory and page file quotas to accommodate
     at least this much memory.

     Process quotas for the ACP process are controlled by qualifers 
     to the 'start rtr' command. See the RTR System Manager's Manual 
     for further information.

     For more control, you may individually set all process quotas 
     for the ACP by using the appropriate qualifer with the 'start 
     rtr' command.  For a more holistic approach, 'start rtr' accepts 
     '/links' and '/processes' as qualifers which can be used to 
     specify the expected number of links and application processes 
     in the configuration. The values supplied are used to calculate 
     reasonably safe minimum values for the following ACP process 
     quotas:

       - astlm
       - biolm
       - fillm
       - diolm
       - pgflquota

     The default value for '/links' is 512. This is high, but is 
     chosen to protect RTR routers against a failover scenario where 
     the number of frontends is large and the number of surviving 
     routers becomes small.

     The default value for '/processes' is 64. This is large for
     frontend and router nodes, but you may need to specify a larger
     value on a backend hosting a complex application.

     You may use an explicit process quota qualifier to specifiy a 
     value larger than that calculated through use of '/link' and 
     '/process', but you may not specify a smaller value.

     Use of /link and /process do not consider memory requirement 
     for transactions. If your application passes a large amount of 
     data from client to server or vice-versa, you should include 
     this in your sizing calculations.

  o  14-3-174   $ENQ ACCVIOs with bad channel message

     Calls to the V2 API specifying an invalid channel identifier
     would cause an access violation in LIBRTR. 

  o  14-3-195  $START_TX when ACP died

     The emulation of the RTR V2 API on V3 has been improved to 
     correctly reflect V2 behaviour for channels which which were 
     idle at the time of ACP failure. Subsequent calls on such 
     channels now fail immediately with the status RTR$_NOACP.

  o  14-3-196  $START_TX from AST w/o ACP"

     Application calling $START_TX at AST level while the ACP died 
     would cause the application to crash inside LIBRTR.

     This has been corrected and SYS$START_TX will simply return to 
     the caller a message indicating that the ACP is not available.

  o  14-3-197  ACPNOTVIA error returned if RTR command $DCL_TX_PRC 
               issued

     On RTR V3.1D (194-SWX01) ECO7-FT1 if the RTR command
     $DCL_TX_PRC is issued for a non-existent facility, an
     ACPNOTVIA error is returned.  This does not happen the first
     time - only subsequent times if RTR is stopped in between.	

     API verbs called from the RTR command line interpreter would
     fail with the status ACPNOTVIA if RTR was stopped and restarted
     without restarting the command server. The problem can be avoided 
     on earlier vesions of RTR by issuing the command 'disconnect 
     server' after stopping RTR.

  o  14-3-203  ACP router crash when other nodes shut

     Configurations where more than 100 frontends were connected to
     any particular router may experience an ACP failure whilst managing
     quorum loss. 

     Automatic router failback has been restored for RTR V2 frontends
     connecting to RTR V3 routers.

  o  14-3-205  Inconsistent TR TX timeout if no link to FE

     Using previous versions of RTR, if a router lost a connection to 
     a frontend that had a transaction active in enqueuing state, then 
     the router would abort the transaction after a period of about one 
     minute if the frontend link was not re-established. This even if 
     the client had specified a transaction timeout much less than this 
     when starting the transaction.

     This is now fixed, so that a transaction in enqueueing state on 
     the router would be aborted after the interval specified by the 
     client (if it's less than one minute) if the router loses its 
     connection to the frontend.

  o  14-3-210  START RTR qualifiers from V2

     Attempts to use obsolete V2 qualifiers to the 'start rtr' command
     cause a warning to be issued. Qualifiers affected are
     'partitions', 'cache_pages', and 'relations'. Warnings are
     also generated if an OpenVMS qualifier is used on a non-OpenVMS

  o  14-3-211  Long facility names were truncated in SHOW FACILITY 
               output

     Facility names near or at the maximum now push the next column 
     to the right instead of being truncated.

     Slightly shorter names are still preferred to prevent the SHOW
     FACILITY columns becoming ragged.

  o  14-3-213  Fac name can be 31 chars?

     Although the %RTR-E-FACNAMLON message states the facility name
     can only have 30 characters, it can take up to 31.

     The documented maximum length of a facility name string is 30
     characters. Prior versions of RTR permitted facility names as long
     as 31 characters. 

  o  14-3-217  Unthreaded UNIX applications using rtr_set_wakeup can 
               fail, e.g., in malloc

     When an unthreaded UNIX RTR application calls rtr_set_wakeup,
     the non-reentrant RTR shared library -lrtr with which it is linked
     installs a signal handler. This signal handler called functions
     internal to RTR which could occasionally call runtime library
     functions such as malloc() that are not async-safe, according to the
     relevant standards. See man (4) signal.

     In practice this may appear to work most of the time, but break
     for no apparent reason when the signal happens to occur while
     background code is also in a runtime library call such as malloc.
  
     The problem in RTR has been corrected. The small penalty for this 
     is that RTR no longer makes any attempt to try to ensure that
     messages available are not just housekeeping. Applications must
     always be prepared for a timeout return status on calling
     rtr_receive_message with a zero timeout, even after a wakeup
     suggests that a message ought to be available.

     Application writers are reminded that their RTR wakeup handlers 
     are subject to the same restrictions: routines like printf, malloc, 
     and the entire RTR API may not be used directly or indirectly from
     within a signal handler. A workaround for applications with unsafe
     wakeup handlers can be to link with the reentrant version of the
     library -lrtr_r because different rules apply for wakeups in a
     thread: applications should not call anything that is not
     thread-safe, or anything that might block indefinitely, such as
     rtr_send_to_server, rtr_reply_to_client, rtr_broadcast_event, or
     rtr_receive_message with a non-zero timeout.

  o  14-3-218  Microsoft Visual C compiler options /Gz (stdcall) and
               /Gr (fastcall) supported

     The RTR API functions in <rtr.h> are now declared with the __cdecl
     attribute so they can be used in applications compiled with
     calling conventions other than the /Gd (cdecl) default.

  o  14-3-250  Flow control has -ve credit

     Applications with multiple channels engaged on more than one
     facility could experience flow control difficulties causing
     indefinite delays in transaction completion. This has
     been corrected.

  o  14-3-253  Restrictions on the RTR wakeup handler

     The use of rtr_reply_to_client, rtr_send_to_server, or
     rtr_broadcast_event in an RTR wakeup handler is not recommended.
     They may block when they need transaction ids or flow control.
     This will cause undesired behavior.

     Functions permitted in an rtr_set_wakeup() handler:

     In an RTR wakeup handler in an AST in an unthreaded OpenVMS
     application, the use of rtr_reply_to_client(),
     rtr_send_to_server(), rtr_broadcast_event(),
     or rtr_receive_message() with a non-zero timeout is not
     recommended. They may block when they need transaction ids or
     flow control, which will cause the whole application to hang
     until the wakeup completes.

     In an RTR wakeup handler in a threaded application the same
     rules apply. Note that wakeups are unnecessary in a threaded
     paradigm, but they may be used in common code in applications
     that also need to run on OpenVMS. Please note that your mainline
     code continues to run while your wakeup is executing, so extra
     synchronization may be required. Also note that if the wakeup
     does block then it does not generally hang the whole application.

     In an RTR wakeup handler in a signal in an unthreaded UNIX
     application, no RTR API functions and only the very few asynch-safe
     system and library functions may be called, because the wakeup
     is performed in a signal handler context. An application can write
     to a pipe or access a volatile sig_atomic_t variable, but using
     malloc() and printf(), for example, will cause unexpected failures.
     Alternatively, on most UNIX platforms, you can compile and link the
     application as a threaded application with the reentrant RTR
     shared library -lrtr_r.

     For maximum portability the wakeup handler should do the minimum
     necessary to wake up the mainline event loop. You should assume that
     mainline code and other threads might continue to run in parallel
     with the wakeup, especially on machines with more than one CPU.

  o  14-3-255  Multiple broadcast or data received on wrong channel

     When running W95/NT with Pathworks installed, RTR would not
     detect that the client had closed its channel when the client
     application was aborted by closing the window. RTR now
     detects when the client has aborted the channel and closes the
     channel.

  o  14-3-258  Stop inquorate standby from going active

     When there is a network segmentation in an active/standby
     configuration, the segment in the minority would become active.
     This behavior resulted in two active servers for the same
     partition.  RTR now puts the inquorate or minority server in
     wt_quorum state and the majority server in active state.

  o  14-8-185
     14-3-259  Slow or hanging applications using large messages
               and discarded broadcasts

     The threshold for flow control has been increased from 100000 
     to 1000000, and can also now be changed by defining the environment 
     variable RTR_MAX_CHANNEL_WAITQ_BYTES to e.g. 10000000 when starting 
     the ACP.

     When too many data bytes are queued to be sent to a destination 
     process then the flow control feature is activated. The sender 
     application may then be forced to wait for a while in the next 
     api call that sends data, or broadcasts may be discarded, until 
     the queue reduces and flow control credit is freely granted again.

     You should increase this parameter if your application sends 
     large broadcasts or sends or replies with large amounts of data 
     per transaction.

     Because broadcasts are subject to discarding you should not use 
     them to send large amounts of data reliably. You may wish to 
     consider using a sequence number and providing a read-only 
     transaction in your application to detect and request 
     re-transmission of any discarded broadcast data.

     There is also a hard limit parameter with the default 100000000 
     (10^8).  The channel will be closed immediately if the send wait 
     queue exceeds this.

     These tunable flow control parameters are provisional and subject 
     to change.

  o  14-3-265  Successive ACP crashes

     Reception of a corrupt network message could cause a failed 
     assertion and demise of the RTR ACP process. The behavior has 
     been changed to yield a log file entry (BADNETMSG), followed 
     by a reset of the link concerned. If such log file entries 
     persist for a particular pair of nodes, it may mean that a 
     network problem exists, and you should consider checking the 
     network hardware for correct operation.

     The RTR KNL subsystem log entry has also been improved to better
     identify the link on which it reports errors.

  o  14-3-272  RTR no longer disables the TCP/IP Nagle algorithm with 
               TCP_NODELAY

     The TCP_NODELAY option which disables the Nagle algorithm was
     previously enabled on all RTR platforms except Solaris. This
     change improves network throughput under load. Response time
     may be slightly longer under some conditions.

     The option can be activated by defining the environment variable
     RTR_TCP_NODELAY. This restores the old behavior on most platforms.

  o  14-3-274  Opening channel for non-existent facility causes crash

     An uninitialized variable caused this crash which was seen in 
     recent Field Test kits (214) and (218) for AIX and Solaris. This 
     has been corrected.

  o  14-3-275  aio not available makes RTR fail with unresolved errors
               for kaio_rdrw etc.

     RTR for AIX exploits Asynchronous I/O for increased journal
     performance. By default, aio is only `defined', i.e., disabled,
     instead of `available'. Aio can be configured with the system
     management tool: # smit aio.

     The RTR installation procedure post_i script now makes aio
     available, and ensures that aio will also be available after
     a restart.

  o  14-3-276  SHOW TRANSACTION on FE after current TR trimmed and 
               before FE reconnected causes ACP dump

     Executing the command RTR SHOW TRANS on a frontend immediately 
     after trimming the current router from the facility could 
     infrequently cause the ACP to crash. 

  o  14-8-173
     14-3-282  Dual ported TCP router not establishing facility links"

     Problems can arise if nodes in your configuration have multiple 
     network adapters and the IP name server is not configured to 
     return all the configured IP addresses for such nodes. This 
     results in such nodes replying to connection requests with an 
     ID that is different to that determined by the initiator of the 
     connection. This can result in refused connections, or only the 
     first connecting facility to gain a current router.

     This version of RTR has been changed to operate correctly in 
     such a partially configured environment.

  o  14-3-283  Image identification shows previous rtr version
 
     Some versions of the OpenVMS/VAX kit for RTR V3.1D ECO10 were
     shipped with a shared library showing an incorrect version ID.

  o  14-3-285  OpenVMS process quotas artificially constained

     Prior versions of RTR would limit the maximum values that
     could be specified for the ACP process quotas to 64K. This
     restriction has been removed. Warning messages are generated
     if the requested quotas conflict with the system wide WSMAX
     parameter, of the remaining free page file space.

  o  14-3-82  Requester hangs in SYS$COMMIT_TXW with RTR 
              V3.1D - null txn
   	
     If rtr_start_tx() was called by a client followed immediately
     by rtr_accept_tx(), then the application would hang
     (unless rtr_start_tx() was called with a timeout). The status 
     returned in the rtr_mt_accepted data in such cases is 
     RTR_STS_SYNCHCOMM (transaction committed synchronously).

     This also corrects the equivalent problem with the RTR V2 API. Also,
     the status returned in the TXSB for such transactions using the
     V2 API is RTR$_SYNCHCOMM.

  o  14-8-128  The RTR ACP now uses an asynchronous method when closing 
               its links

     This version of RTR will defer the deassigning of its network 
     channels during the closesocket routine. This change allows RTR 
     to handle other requests while the channels are being run-down. 
     RTR no longer appears to pause while a network link is being 
     deassigned.

  o  14-8-131  Failure to come up in remember mode

     The non-availability of a remote journal at shadow recovery 
     time will cause a partition that was previously processing in 
     remember mode to resume processing in that mode. Prior versions 
     of RTR would set the partition state to 'shawdow-recovery-fail', 
     and transactions could not be processed until the configuration 
     was manually corrected.

  o  14-8-144  When disconnected the ASYNC cable from the client, the 
               RTR dump was generated on the client.

     Disconnecting a cable that was being used by an asynchronous 
     DECnet link to a remote machine could cause an ACP failure 
     when the transport marked the sockets as invalid.  RTR has been 
     changed to handle this error by temporarily suspending all 
     network activity on the affected node. Network activity will 
     resume as soon as the network is found to be usable again.

  o  14-8-154  RTR Router Crash

     Router ACPs configured to accept anonymous clients could fail
     when handling a network link loss event. 

  o  14-8-162  Hanging servers

     Transaction recovery as a result of server failover could 
     result in server applications getting hung in 'local recovery' 
     state if it also happened that more than 10 client channels 
     had simultaneously caused new transactions to be presented to 
     the backend node.  This has been fixed both by increasing the 
     limit to 50 and by adding a check to make sure that recovery is 
     complete before enforcing the limit, which is designed to keep 
     a backend node from getting overwhelmed when transactions are 
     coming in at a rate faster than it can handle.

  o  14-8-175  RTRACP core dump while idle

     When a Frontend node is trimmed from a Frontend/Router
     Facility Definition, the Facility Descriptor block is not fully
     deleted.  This causes a core dump when RTR attempts to verify the
     facility after a network link loss.  RTR now properly deletes
     the Facility Descriptor Block associated with the trimmed frontend.

  o  14-8-181  RTRACP Crashes

   It was possible that RTR on a frontend could select a router as 
   its current router immediately after that router had been trimmed 
   from the facility. This could potentially leave the frontend in a 
   'connecting' state. 

The following restrictions apply to this kit:

  o  14-1-285: A temporary inconsistency in shadow server state 
               can occur during initial facility startup of a 
               shadowed configuration.  A shadow server can erroneously 
               remain in state "sec_act" until the rest of the facility 
               has been started.

  o  14-3-67:  An application's wakeup routine may be called more 
               often than necessary.

  o  14-1-544: This version of RTR does not support a mixture of VAX 
               and Alpha nodes in the same cluster if both are configured 
               as Backends.  This compatibility issue will be addressed 
               in RTR V3.2.

Problems Addressed in the RTRVVME010D Kit:

This kit (ECO-10) contains the following corrections to RTR V3.1D (210)
ECO8 (ECO9 was not released on OpenVMS):

  o  14-1-436,14-3-225 Additional problem with aborted transactions

     This bug was previously addressed in ECO7, but a further side effect
     of the original change has been discovered and fixed.  The problem
     had to do with a potential ACP crash if a journal flush operation
     was attempted after an aborted transaction.

  o  14-1-496 Calling RTR_SET_INFO would get hung if ACP is not running

     Calling rtr_set_info() or running the RTR SET TRAN command would
     hang there if  ACP is not running.  This problem has been corrected.

  o  14-1-497 Monitor performance degrades as cube of row count

     MONITOR commands can now handle hundreds of rows efficiently.

  o  14-3-215 Rows dropped in monitor display with large # of rows

     MONITOR can now display more than 100 rows subject to /ROWS in the
     monitor file.

     RTR will now display up to over 1000 rows, provided the values for
     the /ROWS qualifiers in the relevant *.mon file are edited.

     This is most easily verified by redirecting the output to a file or
     pipe.  If the output goes to a terminal, then you can use the SCROLL
     commands which are bound to various numeric keypad keys to scroll
     all except the last line of monitor output.

  o  14-3-221 RTR crash during server reject plus network problems

     Under unusual conditions (for example, one server rejecting the TX
     and another accepting the same TX, or a TX being aborted due to
     resource problems -- all at the same time that network fluctuations
     are occurring) it was possible that RTR would find an inconsistent
     TX state while recovering a TX from JNL.  This resulted in RTR
     crashing and has now been fixed.

  o  14-3-224 Crash in 1-node configuration due to length mismatch

     RTR was aborting if it detected a length mismatch in the message
     passed to it.  This has now been fixed.

  o  14-3-226,14-3-162 ACP crash after facility deletion

     After a facility is deleted, it is possibly for the RTRACP to
     receive a message from an application that references the deleted
     facility.  The verification that the facility had been deleted
     failed on rare occasions causing the RTRACP to abort.  This has now
     been fixed.

  o  14-3-229 Logging of journal record deletion errors

     If there is an error deleting records from the RTR journal, then an
     error is logged.  Previously, RTR would silently continue.

  o  14-3-239 Virtual address space full error

     RTR tries to extend the virtual address space of the ACP if there is
     not enough space to allocate data structures when a client or server
     application is started.  If the ACP failed to do this, it would
     crash.  This has now been fixed.  Any such failure will simply
     prevent the new application from starting, rather than crashing the
     ACP.

  o  14-3-241 Application crash trying to send large messages to looping ACP

     Several changes were made to combat this combination of application
     crash and rapidly expanding ACP heap:

          Flow control is now granted only to the channel and facility
          that requested it.  A problem was discovered and corrected
          whereby a grant of flow control credit could allow unrelated
          channels to send too.  This is believed to be the prime cause
          of the symptoms reported.

          An application that is unable to send to the ACP due to
          resource shortage, for example if the ACP is alive but no
          longer receiving for whatever reason, now keeps trying
          indefinitely, and will now appear to hang rather than crash.

          The TCP_NODELAY option which disables the Nagle algorithm is no
          longer enabled on any RTR platform.  This will improve
          throughput under load, although there may be a slight impact on
          response time under certain conditions.

  o  14-3-260 Superfluous network traffic for nonexistent channels

     Whenever a channel opens or closes, RTR sends an update message to
     the router so that it can modify its broadcast routing information,
     if necessary.  In previous versions of RTR such messages were sent
     even if no channel existed for the facility.  In cases where
     machines with the Frontend role had a large number of facilities
     defined, this could result in significant network traffic that would
     be quite noticeable over slow links, such as asynchronous
     connections over telephone wire.  RTR no longer sends these messages
     unless a channel exists on the facility.

  o  14-3-262,14-3-214 Hash table algorithm bug

     The algorithm for accessing certain RTR data stored using a hash
     table was found to be inefficient and could sometimes fail to find
     data elements correctly.  This bug has primarily affected access to
     Transaction IDs and may have caused excessive CPU usage during data
     retrieval or failure to find certain data elements.  This bug has
     been corrected.

  o  14-3-266 Broadcast message corruption

     Reception of an illegal or unrecognizable broadcast now results in a
     log file entry (BMHDRVSN) rather that the demise of the ACP process.
     If such entries persist you may wish to consider checking the
     network for correct operation.

  o  14-8-147,14-8-162,14-8-164 Servers hanging during failover recovery

     Transaction recovery as a result of server failover could result in
     server applications getting hung in 'local recovery' state if it
     also happened that more than 10 client channels had simultaneously
     caused new transactions to be presented to the backend node.  This
     has been fixed both by increasing the limit to 50 and by adding a
     check to make sure that recovery is complete before enforcing the
     limit, which is designed to keep a backend node from getting
     overwhelmed when transactions are coming in at a rate faster than it
     can handle.

  o  14-8-152  Multiple broadcast or data received on wrong channel

     When running W95/NT and having PATHWORKS installed, RTR would not
     detect that the client had closed its channel when the client
     application was aborted by closing down the window. RTR now detects
     when the client has aborted the channel and closes the channel.

  o  14-8-163  Corrupt network message caused RTR crash

     Reception of a corrupt network message would hitherto result in a
     failed assertion and the demise of the RTR ACP process.  The
     behavior has been changed to yield a log file entry (BADNETMSG),
     followed by a reset of the link concerned.  If such log file entries
     persist for a particular pair of nodes, it may mean that a network
     problem exists, and you should consider checking the network
     hardware for correct operation.

     The RTR log entry has also been improved to be better able to
     identify the link on which it reports errors.

  o  14-8-167 Null bytes display in SHOW PARTITION output

     The display of null bytes in the upper and lower key bounds has been
     suppressed if the bytes appear at the end of a key of type string.


The following restrictions apply to this kit:

  o  14-1-285:  A temporary inconsistency in shadow server state can
     occur during initial facility startup of a shadowed configuration.
     A shadow server can erroneously remain in state "sec_act" until the
     rest of the facility has been started.

  o  14-3-67:  An application's wakeup routine may be called more often
     than necessary.

  o  14-1-544: This version of RTR does not support a mixture of VAX and
     Alpha nodes in the same cluster if both are configured as Backends.
     This compatibility issue will be addressed in RTR V3.2.


Problems Addressed in the RTRVVME08D Kit:

  o  14-8-144 RTR crash when ASYNC cable disconnected

     Disconnecting a cable that was being used by an asynchronous
     DECnet link to a remote machine could result in an ACP failure
     when the transport marked the sockets as invalid. RTR has been
     changed to handle this error by temporarily suspending all
     network activity on the affected node. Network activity will
     resume as soon as the network is found to be usable again.

  o  14-8-154 Router crash when link to Frontend disconnected

     Router ACPs configured to accept anonymous clients could under
     circumstances fail when handling a network link loss event. This
     has been corrected.

  o  14-8-155 New environment variables for adjusting connection timeout
       parameter

     Two new environment variables have been created to give operators
     greater discretion in determining how long to wait before retrying
     a network connection attempt.

     The RTR_TIMEOUT_CONNECT variable controls how long a connecting
     node will wait for a response from the connectee to its link
     initiation request.  This value defaults to 60 seconds.

     If the RTR_TIMEOUT_CONNECT period expires without a response from
     the connectee, RTR will wait an additional period determined by
     the RTR_TIMEOUT_CONNECT_RELAX variable.  This variable defaults
     to a value of 90 seconds.  The purpose of the "relax" period is
     to allow the connector to accept a connection request from the
     connectee node, if any are forthcoming.  It is important not to
     set this value too low on Backends and Routers, as such machines
     are likely to be receiving connection requests from many other
     machines. On machines configured to use only the Frontend role,
     however, you can safely set RTR_TIMEOUT_CONNECT_RELAX to just a
     few seconds so that the node can be free to attempt to connect to
     another router as quickly as possible.

     The minimum value for RTR_TIMEOUT_CONNECT is 5 and the minimum
     for RTR_TIMEOUT_CONNECT_RELAX is 1.

The following restrictions apply to this kit:

  o  14-1-285: A temporary inconsistency in shadow server state can occur
     during initial facility startup of a shadowed configuration.  A
     shadow server can erroneously remain in state "sec_act" until the
     rest of the facility has been started.

  o  14-3-67:  An application's wakeup routine may be called more often
     than necessary.


INSTALLATION NOTES:

The Reliable Transaction Router installation procedure uses the
POLYCENTER Software Installation Utility (PCSI). For details on
using PCSI, refer to the OpenVMS System Manager's Manual, Section
"Installing with the POLYCENTER Software Installation Utility".

The logical name PCSI$SOURCE is used to define the location of the
software kits you want to install. For example, if the Reliable
Transaction Router software is located in DISK1:[KITS], enter the
following at the DCL prompt (or include the line in the system
manager's login command file):

  $ DEFINE PCSI$SOURCE DISK1:[KITS]

When running the installation procedure for Reliable Transaction
Router, you can choose whether to install the ODBC Over RTR Oracle7
Server. This is an RTR server used for supporting ODBC-enabled
applications on Windows. You should not install the ODBC Over RTR
Oracle7 Server unless you already have Oracle7 installed.

To start the installation, type the command:-

  $ PRODUCT INSTALL RTR

You will see a display similar to the following:-

  The following product has been selected:
    DEC VAXVMS RTR V3.1-D231     [Available]
    Do you want to continue? [YES]

Press <Return>.  You may safely accept the installation default
options.
</pre>
<hr><br>
<font color=black size=+1>This patch can be found at any of these sites:</font><p>
<a name=colorado>
<a href=http://ftp1.support.compaq.com/patches/entitled/vms/vax/v6.1/rtr/3.1d/dec-vaxvms-rtr-v0301-d231-1.README>Colorado Site</a><br>
<a name=georgia>
<a href=http://ftp11.support.compaq.com/patches/entitled/vms/vax/v6.1/rtr/3.1d/dec-vaxvms-rtr-v0301-d231-1.README>Georgia Site</a><br>
<a name=europe>
<hr><br>
<font color=black size=+1>Files on this server are as follows:</font><p>
<pre>
<a href=/patches/entitled/vms/vax/v7.2/rtr/3.1d/dec-vaxvms-rtr-v0301-d231-1.README>dec-vaxvms-rtr-v0301-d231-1.README</a>
<a href=/patches/entitled/vms/vax/v7.2/rtr/3.1d/dec-vaxvms-rtr-v0301-d231-1.CHKSUM>dec-vaxvms-rtr-v0301-d231-1.CHKSUM</a>
<a href=/patches/entitled/vms/vax/v7.2/rtr/3.1d/dec-vaxvms-rtr-v0301-d231-1.CVRLET_TXT>dec-vaxvms-rtr-v0301-d231-1.CVRLET_TXT</a>
<a href=/patches/entitled/vms/vax/v7.2/rtr/3.1d/dec-vaxvms-rtr-v0301-d231-1.exe>dec-vaxvms-rtr-v0301-d231-1.exe</a>
<a href=/patches/entitled/vms/vax/v7.2/rtr/3.1d/dec-vaxvms-rtr-v0301-d231-1.CVRLET_TXT>dec-vaxvms-rtr-v0301-d231-1.CVRLET_TXT</a>
</pre>
<!-- INSERT YOUR CONTENT ABOVE THIS POINT-->

        </td>
        </tr>
		<tr><td><br></td></tr>
        </table>
        </div>
		
		</td>
		<!-- End content column -->
<!--End main body content area-->

	</TR>
</TABLE>
<!-- End body table -->

<!--The include file below contains footer information that is common to all support pages-->
<!-- begin footer universal include -->
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="388">
	<TR>	
		<TD BGCOLOR="#000033"><IMG align=bottom  border=0 height=30 src="/images/spacer.gif" width=388></TD>
	</TR>
</TABLE>
<FONT FACE="verdana, arial, helvetica" SIZE="1"><A href="http://www.compaq.com/copyright.html">privacy and legal statement</A></FONT>
<!-- rev03.29.1999 -- DO NOT MODIFY! -- End universal footer -->
<BR CLEAR="all">
<IMG border=0 height=20 src="/images/spacer.gif" width=1>
<!-- end footer universal include -->





</BODY>
</HTML>
