Schema and Mapper Versions – Another Day in Deployment Fun

One thing that holds true in support is that similar issues tend to arrive in waves.  No deployment issues for weeks but all of sudden I seem to spend my day swimming in deployment. 

Today, I’d like to point out an UI issue that does not affect runtime.  Let’s say if you have a couple schemas in a BizTalk assembly and a map in another.  After you make some changes to the schema, you increase the assembly version number of the schema project and deploy it side by side with the older version.  Not an unusual scenario since you may have active instances that depend on artifacts in the older version of the assembly and you want to make sure they are drained before removing the older assembly. 

 

image

So now with both schema versions in place, you want to make sure if you have any maps configured in Receive Ports or Send Ports, they are using the right version.  In Receive Port or Send Port properties, you can select what versions of the schemas and the map is used.  So you open up your Receive Port and you find that you can select the map version. You need to do this to make sure you are using the latest map.  But when you try to update the schema version, only one shows up and it is the older version.  This leads one to think that maybe BizTalk is going to use the older schema in the transform which will fail with the update message type.  Fortunately this is limited to an UI issue.  The map picker does not list all of the schema versions but BizTalk runtime will use the updated schema.  This outbound document from the map will be correct. 

Just a small observation.  Now back to work I go…