Tuesday, July 04, 2006

Visual Studio 2005 Team DB Pro

There is a new Visual Studio Team "member" coming out in the autumn, called Team DB Pro. I have only tried to compare database structures between my Development DB and Production DB. It is nice that it is part of the VS family so you get everything in the environment you are used to.

I immediately missed some features though, some of which other companies, e g Toad and Red-gate, have in their products:
- It should be optional to find differences from white space and extra line feeds irrelevant to DB behaviour. If found 325 differences out of 350 and there is perhaps 5 real differences, which I'd like to find.
- Intellisense on databases, tables, columns, SPs, data-types etc.
- It should be possible to transfer(sync) differences in both directions, not only left-to-right
- Possiblity to ignore schema owner (dbo, users) when comparing tables and SPs, again to find real differences.
- Use SQL 2000 <-> SQL 2005. There are only some directions available so far. It should be possible to compare and transfer in all directions.

Downloads:
http://msdn.microsoft.com/vstudio/teamsystem/dbpro/
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=507742&SiteID=1

BizTalk 2006 R2 TAP Beta

You can now apply to join the BizTalk 2006 R2 TAP beta program. During the TAP you get early access to the bits, you need a customer who is willing to participate publicly and you need to involve Microsoft consultants.

Here you can find more information.
http://connect.microsoft.com/site/sitehome.aspx?SiteID=218

-------------
BizTalk Server 2006 R2 will include several new features that will improve connectivity to external Line-Of-Business (LOB) Systems and integrate with Windows Communications Foundation to extend it's support of Web Services.

BizTalk Server 2006 R2 will also include new Microsoft B2B technology for EDI and HIPAA transactions as well as deliver a new RFID Framework and a new BizTalk Server 2006 Workgroup SKU to enable RFID integration.
-------------

My guess is that the BizTalk 2006 R2 beta will probably be public in later beta1, beta2 and RC builds, like the BizTalk 2004 and BizTalk 2006 betas.

Monday, March 20, 2006

Clone and rename servers

When you clone servers either by using imaging software on physical servers or Virtual PC, Virtual Server or VMWare images, don't be too lazy and forget about using SysPrep. Especially if other people on your network are to use the image. Else you might end up with SID/CID-issues and duplicate name-conflicts. Microsoft's own SysPrep is the best thing to use. You should not use NEWSID from SysInternals as it is limited and doesn't take care of MSDTC's CID, which is very important in BizTalk scenarios.

And if you are using SQL Server, you should run these commands after the rename:
sp_dropserver 'oldservername'
sp_addserver 'newservername','local'

Else your SQL Server Master DB will still have the old name registered, which might cause SQL commands ending up on the wrong server depending on host files and if you're running it to localhost, 127.0.0.1 and so on. It is strange that SQL Server doesn't have a self-check to warn about this in the event log at start up.

Virtual Server on a domain controller, http error 500 (The parameter is incorrect.)

Update 2006-04-11:
I actually got back the same error again after rebooting :( I searched for the error and turned off friendly error messages in IE and got the real error instead of HTTP error 500:
The parameter is incorrect.

I didn't find any solutions after a lot of searching, but I eventually got rid of the error. First I found out that you could access the Virtual Server Admin site by using http://127.0.0.1/* and only this worked (not localhost etc). But as you all realise, that is not too useful when you want to access it from another computer. What I did later, which I think is what fixed the problem was to add the vmrc/-entry in servicePrincipalName with the ports after the server. To be sure I added 4 entries, 2 netbios and 2 FQDN with the 2 ports that Virtual Server is using. I guess only one port is relevant, so probably one of them has no effect, but I don't see any real security issue by adding an extra entry. After restarting services, the error messages dissappeared from the Virtual Server event log, but the problem remained when trying to access the Admin Web site. After changing the Security Permissions on the servicePrincipalName, adding Network Service account (Read&Write), and rebooting the server, all problems were fixed. :)

2006-03-20:
I had Virtual Server 2005 R2 installed on a Windows 2003 Server SP1 running in Workgroup mode. I decided to upgrade the server to try out a domain and after that Virtual Server admin page or remote control application did not work. I only got HTTP error 500 when trying to access these applications.

There is a KB about how to fix this, but step 7 is not very clear.

http://support.microsoft.com/default.aspx?scid=kb;en-us;890893

6. In the Value to add box, type vssrvc/Your_Computer_Name, and then click Add.
7. In the Value to add box, type vssrvc/Your_Domain.Your_Domain, click Add, and then click OK.

In step 7, I typed vssrvc/domaincontrollercomputer.mydomain.local (where domaincontrollercomputer is my domain controller on which I have Virtual Server installed and mydomain.local is my FQDN), NOT DOMAIN TWICE as stated in the KB. If you unsure, then look at all the other attribute entries in servicePrincipalName there is probable a few other settings where you find your setting to add after the slash.

After I added these two vssrvc/ attributes, it works fine again.

At the end of the KB-article there is a sample of how to do it with SETSPN command prompt instead of adsiedit.msc. In there it shows how to add vmrc/* as well. I skipped this and my Virtual Server is running fine anyway.

Here is a lot of good information about Virtual PC and Virtual Server if you are in trouble:
http://blogs.msdn.com/virtual_pc_guy/

Tuesday, August 23, 2005

BizTalk 2006 Beta sign-up

In case you missed it the beta for BizTalk 2006 is now open for everybody. Use the information on this link:
http://www.microsoft.com/biztalk/evaluation/bts2006beta.mspx

to access the beta on beta.microsoft.com

Saturday, June 25, 2005

BizTalk 2006 - CTP builds at TechEd USA

At TechEd there were quite a lot of sessions/cabanas around BizTalk 2006 and they had a couple of labs on the new version. The handed out some TechEd CTP builds as well at an install party. Perhaps they will do that on the other TechEds as well.

The main changes/updates for the new 2006 version is the new MMC-admin interface where you can more easily manage your suspended messages and the messaging components. You can group by application (property of the project) and restart/shutdown etc a whole application with all its send ports, receive locations and orchestration. You can group errors by error-code and other variables as well, making it much more easy to see what types of errors you have instead of going through thousands of errors in the event log. The MOM package for BizTalk 2006 is improved as well.

They have added new adapters (POP3 & SharePoint) and included others out of box, which were separate add-ons before (MSMQ, MQSeries). Ordered delivery is supposed to work for most adapters now as well.

Upgrading from 2004 is supposed to be smooth. I guess BizTalk 2006 is like a version 2 of BizTalk 2004, like BizTalk 2002 was a version 2 of BizTalk 2000.

BizTalk 2006 development requires Visual Studio 2005. You don't need Visual Studio or some other hacks in your production environments any longer, since everything is available in the new MMC-admin. Of course you need .NET Framework 2.0. It will run on either SQL 2005 or SQL 2000 as well.

So try it out if you got the CTP or wait for beta 1, which I believe is going public! There are no dates on the RTM yet, but my totally unofficial guess is a couple of months (3-6) after the releases of SQL 2005 and Visual Studio 2005.

Happy mid-summer!
/Niklas

Saturday, February 19, 2005

BizTalk and DTC Cluster Buster

We have been installing Web Servers and BizTalk 2004 servers against a SQL 2000 cluster and it was not the easiest thing to do. Here are some tips which helped us solving our DTC problems.

- Make sure DTC is installed on the servers (Add/remove programs - Windows components)
- Go into Component services/Computers/My Computer -> Properties - MSDTC tab and enable Network transactions in the security configuration (Check the values in the settings)
- Disable RPC security on all machines involved:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
Add DWORD TurnOffRpcSecurity and change the value to 1
Restart SQL services and DTC services on the machines involved
- Enable NETBIOS Across All Machines. Alternatively, you can add entries in the HOSTS file (c:\windows\system32\drivers\etc) so that the machines can be pinged by server name.

If you change the logon userid for the DTC service, the change is not always complete. There are 3 places where the userid is stored! If you change it only in services you may end up with a broken DTC. I believe the best way to change it is in the options under Component services. If however you did this the wrong way there is also a registry entry with the userid which you should change as well. If you end up with a broken DTC (red cross in Component services and/or errors in the event viewer), you may have to uninstall the DTC service and reinstall it. Uncheck it in Add/remove programs and try these commands:
msdtc.exe -uninstall
msdtc.exe -install

You have to reboot when you uninstall the DTC. I have also read that there is a time-out of 15 minutes involved with the DTC so sometimes you have to reboot and wait for a while before continuing.

If you have firewalls involved you may have to use fixed ports for the DTC service as well. This setting is found in Component services/Computers/My Computer -> Properties - Default protocols tab and choose TCP/ip and properties. Add a range in there. Depending on your traffic you might want more ports. We used 5000-5200. There is also a port 1861 involved, which we had to enable in the firewall.

To check that the DTC is working properly the DTCTester tool is very useful. You can download it here:
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q293799

There is also a DTC Ping tool available at MS downloads, but not as useful as the above DTCTester, since it was giving me "Everything OK", while the DTCTester found the connection errors. It might be helpful as well though. Here it is:
http://support.microsoft.com/default.aspx?scid=kb;en-us;306843

Here is another trouble-shooting link on how to re-install MSDTC:
http://support.microsoft.com/default.aspx?scid=kb;en-us;873160

Another problem that we encountered was that the cluster could not start the MSDTC service, because the default behaviour in a cluster was to start services in the wrong order. We had to change the order to start the DTC service before SQL and SQL agent. We also installed the COM+ 1.5 rollup package 3 (883955), which should fix this. This is probably part of Windows 2003 SP1, but it might be worth installing on non-SP1 systems if you have problems.

Some other useful links, which might help as well:
http://support.microsoft.com/default.aspx?scid=kb;en-us;243204
http://support.microsoft.com/default.aspx?scid=kb;en-us;279786

Happy clustering!
Niklas

Friday, February 11, 2005