Microsoft KB Archive/312553

From BetaArchive Wiki

Article ID: 312553

Article Last Modified on 11/5/2003



APPLIES TO

  • Microsoft BizTalk Server 2000 Standard Edition



This article was previously published under Q312553

SYMPTOMS

After you install BizTalk Server on a cluster, you cannot save a BizTalk Server messaging port that uses a primary or backup transport type of SMTP. When you attempt to save a BizTalk Server messaging port that has been created with the SMTP transport type, the following error message occurs:

The messaging port could not be saved.
Error 0xC0C01218: The SMTP host is missing.
The SMTP host can be configured in BizTalk Server Administration.

CAUSE

When you create a BizTalk Server messaging port that uses an SMTP transport type, the BizTalk Server Messaging Manager invokes the adm_Group_GetLocalSMTPHost stored procedure in the InterChangeBTM database, which contains the following code:

-- Retrieve the GroupName from the adm_Server table
declare @GroupName nvarchar(256)
set @GroupName = (select GroupName from adm_Server where Name = @vcServerName)
-- Load the SMTPHost from the specific group
select SMTPHost from adm_Group where Name = @GroupName
                

The adm_Group_GetLocalSMTPHost stored procedure accepts the single input parameter "@vcServerName" from the BizTalk Server Messaging engine, which contains the NetBIOS name of the local node that BizTalk Server is running on.

The adm_Group_GetLocalSMTPHost stored procedure finds the BizTalk Server Group name in the adm_Server table that corresponds to the NetBIOS name of the local BizTalk Server node. If the NetBIOS name of the BizTalk Server node is not in the adm_Server table, the attempt to find the BizTalk Server Group name fails, which causes the attempt to find the SMTPHost against the GroupName to fail.

RESOLUTION

To work around this problem, add the local node for the BizTalk Server cluster into the same BizTalk Server Group that the clustered instance of BizTalk Server is running in. This has the effect of adding an entry to the adm_Server table in the InterchangeBTM database, which will allow the following statement in the adm_Group_GetLocalSMTPHost stored procedure to complete successfully:

set @GroupName = (select GroupName from adm_Server where Name = @vcServerName)
                

NOTE: Microsoft strongly recommends that you only add the local BizTalk Server node to the BizTalk Server Group for as long as you need to create or modify BizTalk Server messaging ports that use the SMTP transport. Failure to remove local nodes from the BizTalk Server Cluster group can cause the BizTalk Server Cluster to fail.

After you have created or modified a BizTalk Server messaging port that uses the SMTP transport, remove the local BizTalk Server node from the BizTalk Server Group.

To add or remove the BizTalk Server node from a BizTalk Server Group:

  1. Start the BizTalk Server Administrator.
  2. Right-click the BizTalk Server Group, click New, and then click Server.
  3. Type the name of the local BizTalk Server node, and then click OK.


MORE INFORMATION

Steps to Reproduce Behavior

  1. Install BizTalk Server in a cluster by following the steps outlined in:
  2. Try to create a BizTalk Server messaging port that uses an SMTP primary or backup transport type.


Keywords: kbfix kbprb KB312553