Tracking Profile Editor Error Messages
Note: This information applies to Tracking Profile Editor in BizTalk Server 2006 R2
BttDeploy.exe is the command line cousin of Tracking Profile Editor. It provides a subset of functionality that TPE provides. Nevertheless, it provides a very vital subset of TPE functionality. BttDeploy.exe error messages are also explained in this section. The two tools share plenty of common code. BttDeploy is just a thin wrapper over TPE functionality. There are no screen shots of error messages provided here. This is due to the fact that developers will search the error text and not the error dialog box. To make things straightforward, only the core of the error messages is listed here and only the important error messages are listed.
Failed to apply the tracking profile.
Unless you see some additional information along with this error message, it is extremely hard to say why tracking profile could not be applied. Error messages that appear as additional information are explained elsewhere in this document.
If you see the following error string under the main error, "Error HRESULT E_FAIL has been returned from a call to a COM component." on a 64-bit box, then you need to follow the solutions in the following KB article and/or apply the QFE. The error comes up because of an issue with MSDTC. This error has nothing to do with BizTalk or TPE.
Read the KB article on this issue
Download the QFE
Error retrieving activities from Primary Import Table Database.
Error retrieving tracking profile from Primary Import Table Database.
Failed to connect to the Primary Import Table Database.
Failed to enumerate assemblies in the BizTalk Management Database.
Failed to enumerate databases on the {0} server.
Failed to enumerate ports in the BizTalk Management Database.
Failed to enumerate schemas in the BizTalk Management Database.
Failed to open the messaging property schema.
Unable to connect to the BAM Primary Import Table Database to enumerate BAM Activity Definitions. Use Set Management Database from the Tools menu to point to a different location or contact your administrator if the problem persists.
There could be many reasons why these errors can crop up. The server is unreachable, is off the network, SQL server is not running on the server, remote connections might be disabled, etc. Fire up a SQL client utility and ensure that the SQL server foo can be pinged and the management database you select can be opened.
Failed to read server and database names from the registry.
The registry keys that contain the management server and database names are either missing or blank. This usually happens when BizTalk is installed but not configured. Or you have configured everything in BizTalk but not BAM. You might have manually whacked the registry keys. Either way, it is necessary to populate the registry keys with correct information. This can be accomplished by ignoring the error and setting the management server and database via tools->set management database menu item. Fill in the SQL server name on the set management database dialog box. Press {tab} key to automatically populate the database name combo box. Select the correct management database name and click OK. This will fix the problem.
Failed to remove the tracking profile.
Hmm... Can't think of a valid reason why this would happen in normal course of events. Check SQL connectivity?! Is there any additional information in the error message that sheds light on the precise problem that led to this error?
Failed to launch BizTalk Server Online. I can't think of a solid reason why this error will ever show up. Are you able to launch Internet Explorer successfully and connect to a website? Failed to launch help. There are couple of reason why TPE can run into this error. The most simple and straightforward reason is that BizTalk documentation is not installed on the computer where you are trying to launch BizTalk help. Ensure that you have documentation installed and retry launching help. If you go kill the process, dexplore.exe, behind the scenes when the help is on display, then closing help and re-launching help from TPE will lead you to this error. Simply restart TPE and re-launch help. Failed to load the WSDL for {0}. Failed to load the current WSDL. Refer to HELP for information on possible causes and how to correct this issue. The keyword here is WSDL. It seems that you are trying to track something from HTTP/SOAP ports or request-response ports associated with a web service. It is possible that while you were creating the tracking profile, the service was running fine. When time came to apply the tracking profile, the service became unavailable, for whatever reasons. Please ensure that the scenario that you are working with is still working. Check your web service URLs, etc. Failed to save {0}. Are you running out of disk space? Are you saving over a UNC path and your remote server is experiencing difficulties? Failed to open {0}. The tracking profile file either does not exist or you do not have security permissions to read the file. This tracking profile does not contain some actions to which milestones or data items are mapped or contains invalid or missing port mappings. There is a data item that you track from ports but you have not specified any ports to track this data item from. Go through all your mappings and see that there is a port specified for all mappings that track data from ports. There is no active tracking profile for this activity definition. Would you like to import this activity definition instead? As the warning message amply states, there is no tracking profile applied for the activity definition you are trying to import. This is just a warning message and you can choose to ignore it and go ahead and create a fresh tracking profile for this activity definition. If this message comes up as a surprise, then you probably forgot to apply the tracking profile last time when you worked with the tracking profile. Remember, creating a tracking profile and applying it are two different tasks. First one is necessary but does not imply the second. In a multi-box scenario where there are two BizTalk Groups with two BizTalk Management Databases BUT with only one Primary Import Table database, this message may pop up. Say, on box one, you create and apply a tracking profile. Now, sitting on box one, you point TPE to the second management database (via set management dialog box). Next, you try to import the tracking profile for your activity definition. The second management database has no information on the tracking profile and TPE will tell you so. Of course, if you now create and apply a fresh tracking profile for the same activity definition, it will overwrite the first one. Tracking profile information is stored in the Primary Import Table database. There are no ports associated with {0}. TPE will talk about ports if the tracking profile tracks something from ports. This could be in the form of message payload in pipelines or messaging properties. Either way, TPE needs to know the port on which to track these payload data or properties. The name of the payload is mentioned in the error. Locate that node in the BAM activity definition view [the LHS view] of TPE and right click on it. Choose "Set Port Mappings" menu option and select the port from which you want the data to be tracked. Click OK on the "Select Ports" dialog box and save the tracking profile. The error will go away and you will be able to apply the tracking profile successfully. The selected help topic is not available. This message typically appears when a custom installation of the product was performed and the documentation was not installed. To install the documentation, on the Start menu, click Control Panel, double-click Add or Remove Programs, and then click the Change/Remove button for the Microsoft BizTalk 2006 program in order to review and update the list of installed components. This error message comes up as additional information to the error message, "Failed to launch help." This error message is the ideal error message. It tells you what the problem is and how to remedy the same. The ContinuationID {0} does not have a matching Continuation. The activity will not complete if there is no corresponding Continuation defined elsewhere. The Continuation {0} does not have a matching ContinuationID. The activity will not complete if there is no corresponding ContinuationID defined elsewhere. This is a warning message only. TPE will not prevent you from applying the tracking profile. You have to ensure that the matching Continuation or ContinuationID is supplied via BAM APIs in your code somewhere. The tracking profile for Activity Definition {0} is not applied. This error will come up if you try to remove a tracking profile that has not been applied. The Tracking Profile Editor cannot start the activity from the location from which you have selected the ActivityID or ContinuationID because of scope constraints. Please check your tracking profile. Are you tracking data from an invalid shape? Invalid shapes being those that can't be mapped/tracked. They are group, message assignment, loop, suspend, terminate, throw exception, transform. OR you might be tring to map a shape from an orchestration that contains such a shape. For example, you might be trying to track from a loop shape and from a shape outside the loop shape. You might be trying to map something from one branch of a parallel shape to ActivityID and the parallel shape happens to be the first/last shape in the orchestration. This error will pop up in all these situations and many more. This essentially means that TPE has found your mappings/orchestrations to be so convoluted that it can't figure out the Begin/End of the activity. There are multiple solutions, none of them particularly pretty. Rewriting orchestrations is one. Writing custom code in orchestrations using BAM APIs is another. Example: Orchestration1 Receive Shape ShapeA ShapeB TaskShape Mapping Message Payload data from Receive Shape is mapped to ContinuationID ShapeA, ShapeB mapped to activity milestones A shape within TaskShape mapped to milestone Now, the task shape can't be tracked and occurs at the end of the orchestration. This is well known and documented that you can't track from this orchestration using TPE. Alternative is to use BAM APIs. Another alternative is to split up the origional orchestration into multiple orchestrations, one calling the next. For the current example the two orchestrations will look like this: Orchestration1 Receive Shape ShapeA ShapeB Call orchestration2 Orchestration2 TaskShape Now you can map your activity items to the two orchestrations as usual. On another note, you may still run into this error even if you have only valid shapes in the orchestration. In such a case, one way to "fix" this error is to map to the ActivityID/continuationID from a shape as far up in the orchestration as possible. The "{0}" database is not a valid BizTalk Management Database. This is straightforward. As the error says, the database selected on the set management database dialog box is not a valid BizTalk management database. Select the correct database and you should be good to go. This error can also come up in a distributed environment where the server with the management database is no longer reachable. There is no activity in the database {0} that matches the activity {1} in the tracking profile. The {0} schema cannot be found in the BizTalk Management Database. The {0} assembly cannot be found in the BizTalk Management Database. The tracking profile and the BTS solution are out of sync. Either your solution has changed or the tracking profile has changed. In either case, rebuild the tracking profile and re apply. {0} contains invalid character(s). Tracking profile folder names must derive from a valid character set. The invalid characters are, apostrophy, open parentheses, close parenthesis, colon, comma and quote. Be extra careful of the characters if you are working on a non en-us language platform. {0} is not a unique name. The names of relationship and document reference URL folders must have unique names. {0} is not a valid tracking profile. The specified tracking profile is not valid. The tracking profile has failed the schema check. Are you sure you are dealing with a valid, properly formed, xml looking tracking profile? Open the tracking profile in notepad or TPE and see that it looks like a tracking profile. It should be a valid XML file at least. Tracking profiles are utf-16 encoded. This is to support unicode characters. Some text editors may save the file as ANSI or utf-8 and then you are likely to run into the above error. So, edit tracking profiles using TPE only. If TPE can open and display a tracking profile, then it is a correct tracking profile. If not, either the xml validation or the character encoding has screwed the tracking profile up. {0} is too long for a Continuation or ContinuationId. Continuation or ContinuationId names cannot be longer than {1} characters. {0} is too long for a Relationship. Relationship names cannot be longer than {1} characters. {0} is too long. Names cannot be longer than {1} characters. Continuation, ContinuationID, relationship and document reference URL folders may become column names in temporary tables. Or, they may appear as temporary data in some temporary tables. It is necessary that TPE abides by the length limitations imposed on column names, data lengths, etc., by SQL server. Ensure that the names are well below the limits imposed by TPE. Tracking profiles can only have exactly one Trace ID dimension. There should be exactly one "ActivityID" folder node. Your tracking profile is either missing one or has more than one. Tracking profiles created via TPE will not face this problem. Is this a hand crafted tracking profile? Hand crafted tracking profiles are not supported. Compare your hand crafted tracking profile with the one created by TPE and ensure that there is exactly one ActivityID node. Error message in the TDDS_FailedTrackingData table: TDDS failed to deserialize streams. The annotation information for version xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, track point 0 cannot be loaded from the database due to a database error. This error may crop up in many situations. One such situation is when correct permissions are not setup in the database (something that should never happen in the first place if BAM configuration completed successfully). In SQL enterprise manager, go to bam primary import table > stored procedures > bam_metadata_getannotation > right click > select properties > select permissions tab on left frame > add execute permission to BAM_EVENT_WRITER role > click ok Copyright (C) 2006 Vikas Tyagi. All rights reserved. THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. |
Comments
Anonymous
March 26, 2007
I have an orchestration starting with a listen shape with 2 parallel receive shape. the TPE is complaining about location of continuation nodes. any suggestions?Anonymous
August 28, 2007
The comment has been removed