Home > BizTalk Server > BizTalk Server 2010 Map Deployment Bug

BizTalk Server 2010 Map Deployment Bug


This is more of a “note to self” but I feel it is worth sharing with the community.

Microsoft recommends that hot fixes should only be applied if you are experiencing the issues they address. There are good reasons for this, mainly around the amount of testing a hot fix goes through in comparison to a service pack.

I am going to go against that advice for BizTalk Server 2010 installations and add “Cumulative Update Package 1” to my installation checklist. This is to avoid a bug that has been present in every BizTalk Server 2010 environment I have installed and configured; from development machines to production servers.

Background

I first came up against this bug through being trigger happy with the Deploy menu item on a transforms project. I mistakenly deployed the transforms project before deploying one of the schema projects it referenced. Whilst previous versions of BizTalk Server would have prevented the transforms project from being deployed, BizTalk Server 2010 allows it.

The Bug

The bug manifests itself in the BizTalk Server Administration Console. When trying to expand the Applications folder you will receive the following error:

Schema referenced by Map ’map_name’ has been deleted. The local, cached version of the BizTalk Server group configuration is out of date. You must refresh the BizTalk Server group configuration before making further changes.

Refreshing the BizTalk Server group does not resolve the issue and the error continues to appear. This prevents access to every application in the group.

For further information on the bug have a read through Knowledge Base article 2516201

This has been covered under VSTS Bug number 678144 and is fixed in Cumulative Update Package 1 For BizTalk Server 2010.

The Fix

Applying the CU will only prevent the issue from occurring again by generating an error in Visual Studio. In the case of an MSI deployment, the error will appear during the import. However, it will not resolve the problem in the BizTalk Server Administration Console.

To remove the error you must delete the offending map in the transforms project from the bt_mapSpec table in the BizTalkMgmtDb database.

-- Locate the itemId of the map
Select * from bt_mapspec
-- Using the itemId retrieved above delete the map
Delete from bt_mapspec Where itemid = 'itemId_of_map'

On refreshing the BizTalk Server group the error will disappear and the applications can be accessed again.

Deleting entries from the BizTalk Server tables is not something I am overly comfortable with, but unfortunately it was the only resolution I could find to get rid of this particular error.

Advertisements
  1. June 20, 2012 at 09:36

    Nice one Colin. I’ve actually hit this one before too, and I’ll admit that I too tried to blog about this problem but I had already applied the CU to my development environment and was too lazy to spin up a new one or uninstall the CU 🙂

    Sometimes there is just no choice but to dive into the BizTalk databases, unless you have the luxury to rebuild your BizTalk runtime databases from scratch and redeploy all the applications again. Luckily Microsoft have patched this hole.

    • June 20, 2012 at 20:37

      I first came across it early last year and did more or less the same thing; made a note in my OneNote and forgot about it.

      Hopefully this helps others in avoiding it.

  2. June 22, 2012 at 17:21

    Colin, have you tried closing the BizTalk admin console and reopening it? I have had similar issues, not necessarily related to map objects, ocurr to me before. Sometimes the refersh in BizTalk admin console does not do the trick my a restart of the application did.

    ~Nic

    • June 22, 2012 at 17:59

      Nic, I’m afraid all the usual tricks did not work in trying to resolve this issue.

  3. July 4, 2012 at 02:40

    The other lesson is, I think, take frequent backups of your BizTalk management database. Stuff happens – and on dev systems, frequently. When you get one of these “uh oh” moments, its nice to know you can roll back to a known stable state (and a recent one!).

  4. Ravi
    May 2, 2013 at 23:08

    I had to find the map in bts_item and delete that reference in bt_MapSpec

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: