newtelligence poweredRSS 2.0
# Monday, June 23, 2008

This one took me a little longer then I figured. Maybe I’m just trying to do stuff the wrong way, but I don’t know, I feel like my use case is correct.

What am I talking about anyway? I am talking about creating a set of web tests in Visual Studio Test Edition (well Team Suite) that I can actually use in a real world situation (i.e. Have tests that work on a dev, staging and production server). The problem is/was, hard coded URLs for my dev server, which ultimately would have to be changed to point at staging and production.

Before proceeding, let me spell out what I’m trying to do (use case):

  • Use the VS GUI to create and most likely run my tests
  • Single place to store the web server, and other settings that I can use for all my tests

At first, I thought this was going to be a very easy change, as there is a “Parameterize Web Servers” option when you right click on the root node of your web test. This creates a context variable, which I thought was cool, until I realized it was on a test by test basis, not project. I guess I was looking for a project wide context parameters file, but couldn’t find one.

I did some searching and supposedly you can set an environmental (yes, from a command prompt) variable named Test.<ContextParameter>, however I was unable to get this to work. I think this might only work when invoking mstest from the command line which makes some sense, but kind of throws a wrench in the works. While this would be perfectly acceptable for a un-attended build server, what if I needed to point to a new dev server in the GUI?

I then moved to a XML data source with a single “line” of data":

   1: <?xml version="1.0" encoding="utf-8" ?>
   2: <Config>
   3:  <UrlRoot>http://dapltp101.dmz.pri</UrlRoot>
   4:  <LoginUserName>asalvo</LoginUserName>
   5:  <LoginPassword>123456</LoginPassword>
   6: </Config>

 

This worked pretty good, except that when selecting UrlRoot from the drop down list of available options, it replaced the entire URL, and not just the URLRoot. I do like how they made the property grid “strong typed” in that it gives you the fields you defined for your data source, but I didn’t want to replace my whole URL. Also, I could not edit the value after selecting my XML data source value.

Looking at the format of ContextProperties in values, as well as how the data source was referenced, I decided to try typing what I wanted in myself. I went to the URL value and replaced the URL root with the name my XML data element, and this worked.

For example, given:

Type this in the value field for your URL in the Request object on the test: {{ConfigXml.Config.UrlRoot}}/Location1

Like I said, that took me a little while longer then I would have thought. I should have went with my gut and tried that format soon after getting the regular XML data source to work.

I do have one last issue (well the fist of many I am sure), and that is, I have two URL’s when I really should only have one. When I hit the root of my website, I am redirected to a https:// URL, and that is treated differently. I’d like to capture the redirected URL and use that so I don’t have to maintain two values in my configuration file, but I’m just gonna roll with it for now.

Monday, June 23, 2008 10:14:44 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Programming
# Friday, June 20, 2008

Tonight was my first ever CodeFest event, physical or virtual (yes, there are virtual CodeFest’s being held via Second Life). The doors opened around 5pm, and I was there a little after that. There was an abundant supply of Papa John’s Pizza (+2 points) and free soda. Looking over the room, it’s pretty interesting to see all these laptops and power strips plugged in. Defiantly not something the fire inspector would approve of. Let’s hope I don’t have to break out the back window to escape a giant electrical fire.

Dave Bost and Larry Clarkin are our Microsoft hosts this evening, and they brought a boat load of prizes to give away. They also brought about 7 USB hard drives for people to copy the lab VM’s and labs for those who didn’t know, or didn’t bother to download stuff. With the exception of the labs, getting a VM provided to me is a bit to easy, so I decided to setup stuff myself. For the CodeFest tonight, I’m running on VMWare server 1.05, with a Win2k3 SP2 guest OS. I loaded up VS 2008 Team Suite, .Net Framework 3.5 beta 1, and SQL 2008 RC0 (I told you, I like a challenge). I’m rolling with Win2k3 for my guest because I only have 2 GB of ram on my laptop (note to self, hit up boss for 2 more GB of ram and reinstall server 2008), and windows server 2008 takes about 350MB more memory in my experience over Win2k3.

Linq and new Language Features

  • Automatic Properties: Define your property with an empty get and set (similar to an Interface declaration), and the compiler creates the backing variable for you.
  • Extension Methods
  • Object Initializers: Assign values to properties or fields in the “constructor” without having a constructor explicity defined
  • Collect Initializers
  • Anonymous Types: Combines Linq with Object Initializers to create new class definitions at run time based on the results returned from Linq.

Here is an example of Linq with an Object Initializer. The var we are creating is named contacts and is declared with var, as it’s not a strongly typed class. Notice that while there is a T-SQL feeling, the order of the expression is somewhat backwards with the from statement coming first (which I believe helps with intelli-sense among other things). The last line declares a new class (which you could call contact), that has two public properties, Name and Phone. “var” is not a dynamic declaration like it is in VB6, it is strongly typed, it just saves you the hassle of writing the type on the left side of the =. The compiler inspects the right side, and figures out what the type should be. You can mouse over “var” in VS, and it will tell you what type it is.

   1: var contacts = 
   2: from c in customers
   3: where c.State == "WA"
   4: select new {c.Name, c.Phone);


What you can’t see in the above code snippet (because I just typed it in manually), is that the auto formatting of the Linq statement in VS absolutely rocks, formatting the statement exactly the way I would have manually. It really makes the code more readable, and I can appreciate this little feature.

WPF

We pretty much jumped right into the lab/demo/code for WPF, so I didn’t take many notes, as you can see. The demo we were working on was pretty cool, it had some nice animations, graphics, etc. While we didn’t code all of the animations ourselves (copy/paste from the lab files), you can easily go in to the source and look to see how the designer (person) accomplished the various animations.

Conclusion

Overall I was very pleased with the CodeFest, and will defiantly be checking out the next one. I didn’t have any issues with my custom VM I put together, as the lab files were provided as stand alone downloads prior to the class.

Friday, June 20, 2008 3:12:26 AM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -

# Thursday, June 19, 2008

Today I was working on installing a WCF application on Windows Server 2008, hosted by IIS 7. This was my first attempt at running WCF on IIS 7/Server 2008, and the first time WCF was used on this particular box. Needless to say, things didn’t work as expected.

Since this is a test box, I didn’t have a public cert for use with SSL, but IIS 7 adds a very nice Self Signing Cert feature, which is accessible in the IIS Manager under the root server node (look for server certificates under IIS). Unfortunately, the self signed cert uses the computers fully qualified host name, and you are not given an option to fix this. Looking around, it looks like the self signing cert tool that shipped with the IIS 6 resource kit allowed you to specify the domain name. Anyway, this is a minor inconvenience, and easily fixed by using the windows hosts file to redirect. You need to remember to export the cert from the IIS management tool, and import it to your trusted root certs on any client computer to avoid getting warnings in IE, and errors in your WCF client applications.

However, certs were not the reason for this post, the following error was:

Error the client and server are no longer in sync for their wcf service settings. System.ServiceModel.ProtocolException: The remote server returned an unexpected response: (405) Method Not Allowed. ---> System.Net.WebException: The remote server returned an error: (405) Method Not Allowed. at System.Net.HttpWebRequest.GetResponse() at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout) --- End of inner exception stack trace --- Server stack trace: at System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyResponse(HttpWebRequest request, HttpWebResponse response, HttpChannelFactory factory, WebException responseException) at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout) at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout) at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.Request(Message message, TimeSpan timeout) at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs) at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message) Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) at …

Looking back at this error, I think I may have missed a key clue. The phrase “The remote server returned an unexpected response” should have clued me in that something wasn’t setup right. I usually see this type of error when IIS tries to display an error message in HTML, thinking that it’s a browser request. The WCF client application isn’t expecting HTML, so it throws an error.

It’s been awhile since I worked with WCF, and I forgot basic trouble shooting 101 for a couple of minutes, and finally remembered to just type in the URL to the .svc file on the server. I was greeted with an IIS 7 error page that listed some pretty good trouble shooting steps. The first one said to check the server handler mappings, which I did, and noticed there were not mappings for .svc. I found a blog post on wcf and silverlight, which explained how to enable WCF on IIS 7.

Now I had installed WCF (.net 3.0) via the features section of server manger in Server 2008, but I guess that doesn’t actually enable it to work with IIS 7. Maybe I didn’t install something in the correct order. Fair enough, and the fix is simple. From a command prompt (I ran mine with admin privileges under UAC), execute ServiceModelreg -i in c:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation. Once this was done, I went back to my handler mappings and saw entries for .svc. 

I’d like to note that the error messages returned by IIS 7 in the browser window (when browsing from the web server itself), gives allot better error and diagnostics information for trouble shooting.

Thursday, June 19, 2008 10:16:52 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Programming

So I find my self downloading disc 1 and disc 2 of VB 6 enterprise edition from MSDN subscriptions. I also downloaded the VB6 runtime files and SP6 for VB6.

You may be wondering why I am doing this. I wrote, and sold a copy of an application in a former life (or so it seems looking back to the year 2000), and I need to help my “client” get the app up and running on a new PC. However, I have to make a few tweaks in the VB6 code. I hope I still have all of the dependencies still.

This might actually motivate me to rewrite the app in .Net, something I have been wanting to do since .Net came out, now almost 7 years ago I think.

Thursday, June 19, 2008 4:21:57 AM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Programming
# Wednesday, June 18, 2008

I wanted to try out SQL 2008 for the upcoming Madison DotNet Code Fest. I had downloaded the February CTP last week, and started out with that. I actually got everything installed and went out to find the sample databases on CodePlex, and discovered that RC0 had been released this week. Oh well, just revert the virtual machine to it’s pre sql state and start over with RC0.

Pre-Installation

Pre Requisites

The following pre requisites were installed without issue as part of the setup process. All pre requisites were included with the ISO.

  • .Net Framework 3.5
  • .Net Framework 3.5 SP1 Beta 1
  • Hot fix for Windows Server 2003 (KB942288-v2)
  • Reboot

My base Windows 2003 VM has only an 8 GB system drive, so I install everything to a second virtual hard drive which usually has a drive letter of E, as it does in this case. So all of my install paths are to E:\, but the folder structure remains the same.

SQL Server Installation Center

The SQL server setup has been completely revamped from SQL 2005, and there are some noticeable additions from the February CTP as well (the most prominent is the addition of a GUI option to use an existing configuration file).

Planning: Requirements, documentation, system configuration check, upgrade advisor

Installation: New stand alone, new fail-over cluster, add node to cluster, upgrade from SQL 2000 or 2005, search for production updates

Maintenance: Edition Upgrade (like changing from developer to Enterprise), repair, or remove from cluster

Tools: System configuration checker, installed SQL server features discovery report, upgrade integration services packages

Resources: Documentation, community, CodePlex samples

Advanced: Install based on configuration file, Advanced cluster prep and completion

Options: Platform (x86, x64, ia64)

Installing

I went ahead with and chose the stand alone installation. Five items were checked before I was allowed to proceed: Minimum OS version, setup administrator, restart computer, WMI service, validation for SQL server registry keys. All items passed and I proceeded to the product key.

The installation media seems to have all of the files for evaluation, express and express with advanced services. I didn’t have a product key, so I just went with the evaluation version, which should give me 180 days to evaluate. After selecting the edition, I had to accept the EULA and then have some setup support files installed.

Another system check was run, and everything passed except I received a warning notification because I had enabled the windows firewall. A message indicated I should check out a page at Microsoft, but the page had no mention of firewall configuration. Clicking next, I was brought to the Feature Selection page, and the main portion of SQL 2008 setup.

Feature Selection

These are the options I chose, and is not an all inclusive list.

  • Instance Features
    • Database Engine
    • Reporting Services (I’m interested to see how the non-IIS reporting services works)
  • Shared Features
    • Business Intelligence Development Studio (to create some sample reports)
    • Client Tools Connectivity
    • Integration Services (Was required in Sql 2005 for maintenance plans)
    • Client Tools Backwards Compatibility
    • SQL Server Books Online
    • Management Tools – Basic (Management Studio, SQLCMD, and SQL Power Shell provider)
    • Management Tools – Complete (Support for Reporting Services, Analysis Services, and Integration Services, SQL Profiler and DB Tuning Advisor)
    • Microsoft Sync Framework (interested to see how this works with mobile devices)

Instance Configuration 

  • Default instance
  • Instance ID: Default of MSSQLSERVER, however you can change this, and it automatically updates the install paths
  • Instance root directory: E:\Program Files\Microsoft SQL Server\
  • Computed SQL Server Directory: E:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER
  • Computer Reporting Services Directory: E:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER

I do like how you can change the instance id for the default instance, as well as choosing a named instance (which you’ve always been able to do).

Disk Space Requirements

After selection your options and installation drives, you are presented with a screen that shows drive space requirements. Unfortunately, even with changing all install options to E, half of the required disk space is still targeting my C drive.

  • C:\windows: 1188 MB Required
  • Shared Features (E): 724 MB Required
  • Instance Directory: 267 MB Required

Server Configuration

Here you configure the user accounts for each service. Sql Server Browser defaults to Local Service. Sine I am not running in a domain, nor do I need access to any domain resources, I created a local user account and used that for the Sql Server Agent, Database Engine, Reporting Services, and Integration Services service.

You can also change the collation, but I left it as the default: SQL_Latin1_General_CP1_CI_AS

Database Engine

Account Provisioning: Windows Authentication or Mixed mode. I went with integrated, and added two users to the server admin role.

Data Directories:  Here you can choose the root data directory, as well as where user data files, log files, and the system databases are installed to, wow, that is a nice change. I’m using the default of E:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data, but in our production systems, this would defiantly change. Being able to specify this stuff at install time is awesome, and I can defiantly see the need for some install scripts.

Filestream: Here you can enable FILEStream for T-SQL access. I have no idea what this means, so I will leave it off for now. You have to specify a windows share name when you enable to, so I am curious to find out more. You can also allow remote clients to have access (via the share?).

Reporting Services

You have three options, Native mode with default configuration, SharePoint with default configuration, and install but do not configure. I’m going with the native with default configuration in the essence of time.

Installation Progress

Prior to starting the install, a final system check is performed, and all checks passed. Before clicking install, you are presented a summary of what will be installed, as well as given the path to the .ini file that contains the configuration. I have included my path below, but it will very from install to install as the path includes a date stamp: C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log\20080618_142128\ConfigurationFile.ini

The installation process took longer then I remember to install the February CTP, but other then that, the install wen smoothly and no errors were encountered.

Post Install

I went into the SQL server Configuration manager, and under Sql Server network Configuration, I enabled TCP access so I could remotely connect to the SQL server. I also opened up port 1433 to my local subnet in the Windows Firewall.

First Thoughts

I tried connecting with SQL Management Studio 2005 to my new SQL 2008 instance, and it failed, so that is a little disappointing, but not unexpected. Same goes for Visual Studio 2008 pre-SP1 (since SP1 is still beta I have not installed it on my main machine), but SP1 beta 1 fixes this issue.

Management studio looks pretty much the same, just that there are new options in the navigation tree such as auditing and resource governor. I was able to connect to a SQL 2000 database without issue. I noticed a new publish to web service option when right clicking on a database, but I’m not sure if this is part of SQL or the Sync Framework.

The report manager site came up ok, but the reports site threw a permissions error indicating my service account did not have the proper permissions.

Wednesday, June 18, 2008 10:03:12 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Sql
# Tuesday, June 17, 2008

Found some new (and updated) remote help and IT tools today. The first tool, is a new one (to me at least), which I found from an article on Tech Republic, and is called CrossLoop. Cross Loop is a remote desktop/vnc clone that allows you to view the desktop of another PC. It is designed for remote helpdesk scenarios, as it requires a user at the remote computer to initiate a connection.

The second and third tools are Team Viewer and Ultra VNC, both of which I have heard of before, but have been updated. Team Viewer’s free offering has been expanded for non-commercial use, while Ultra VNC has several plug-ins and add-ons which make it suitable for a variety of scenarios.

The add-ons for Ultra VNC that interest me the most are the Repeater and Nat2Nat, both of which allow for connections to be made across firewalls. Digging thru the Ultra VNC forums, I came across several posts talking about a solution (Ultra VNC with various add-ons) that enables remote connections to be made using SSL on port 443 without the need to configure firewalls. The Ultra VNC repeater is licensed under the BSD license, but I’m not sure on the other add-ons. The NatHelper server that is used for the Nat2Nat looks like it might be hosted by Ultra VNC, as I didn’t see any download links for it.

The final tool I came across today, was Spice Works, which was an add displayed on the Ultra VNC sight. SpiceWorks is a free (supported by ads, and not open source) tool for IT professionals looking to manager their network. Here is a review from PC Magazine (which also drops the names of a couple of open source network monitoring tools).

Tuesday, June 17, 2008 4:23:18 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Review For Future Projects | Tools
# Tuesday, June 10, 2008

I was searching for a stand alone installer for windows live writer, instead of the dumbed down live services installer so that I could install live writer onto my Win2k3 workstation. Thankfully, they just released a tech preview of a new version, and it comes as a stand alone installer, which installed on Win2k3. You can download the preview here. This is not a side by side install, your previous file versions are overwritten, but all of your settings and plug-ins are preserved.

As far as new features go, the fact that I could install on Win2k3 was enough for me, but they added tabs at the bottom of the main screen to allow you to quickly switch from edit to preview to source mode very easily.

Hopefully I will be getting some time to write some more content as I’ve been too quiet lately and being able to easily blog from my main workstation at home (running win2k3) will help with this.

Update:

There is a new auto linking feature that I’m still trying to test out. This is similar functionality to content filters in dasBlog (that was a auto link), but is limited to setting up hyper links with common text, where as content filters can be setup for text or RegEx and the replacement value can be anything. The nice thing about auto-linking, is that you can see your links as you type them in live writer. However, content filters apply to your entire site and can be changed to update all text in all your posts.

Tuesday, June 10, 2008 4:43:00 AM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Technology
# Friday, June 06, 2008

Continuing from my problems with installing reporting services, I now turn to configuring reporting services running on Server 2008. I have a total of four front end web servers, two for staging and two for production. Each pair points to the staging and production databases respectively. I was following this Microsoft document on how to install and configure for server 2008, but still ran into some errors. Both errors where displayed in IE when trying to browse to http://localhost/reports (the report manager site).

Error #1: rsReportServerNotActivated

This turned out to be an error with the encryption keys. I searched for documentation on setting up a web farm, and from what I found, there really was no mention on syncing the encryption keys, but ultimately that's what I ended up doing to get both front end web servers to show as initialized.

Starting with my staging servers, I looked in the ReportServer.Keys table, and saw that I had two entries, one for each web server. However, run of them was missing data in the SymmetricKey column. I exported the key using the Reporting Services Configuration tool from one server, and imported that key (again using the Configuration tool).  This fixed the error on my staging server, but led be to Error #2 (see below).

On my production servers, I had web100 showing as activated, but web101 showing as not activated (nor would it activate). There was a row in the keys table for web100 and web101, but I couldn't export the key from web100 like I could in staging. Attempting to export the key from web101 gave me an error saying it couldn't export the key, which made sense since it didn't have one. I tried using TSQL to copy the contents of the row for web100 in the Keys table to web101, but while it executed, it didn't fix the problem. I was a little frustrated at this point and just deleted all three rows from the keys table.

Wait a minute, where did the 3rd row come from? Back in the configuration tool, neither server was shown as activated, in fact, neither server was shown at all! Turns out that 3rd row has some dummy data in it that must be used somewhere. In case anyone did what I did, you can just add the row back in. All columns are null except InstallationID = 00000000-0000-0000-0000-000000000000, and Client = -1.

I went back to the configuration tool on web101 and under encryption keys, I hit delete. Looking back in the Keys table I saw I had a row for web101 again, and I was able to export this key. I promptly imported this key in on web100 and both servers activated.

After a quick reboot to verify that everything worked still, I was able to move onto the staging servers and Error #2. Yes, I did backup both encryption keys to a safe location for DR purposes.

Error #2: The report server is not responding. Verify that the report server is running and can be accessed from this computer.

I was getting Error #2 on web200 (figure out our naming convention yet?). This server was also showing an error in the event log: Report Manager cannot create the trace log %Program Files%\Microsoft SQL Server\MSSQL.1\Reporting Services\LogFiles\ReportServerWebApp__06_06_2008_14_40_25.log. This indicates a problem with permissions somewhere I'm guessing.

For all of my web servers, I've created a new SqlRsAppPool set to classic mode, which runs as a domain account. This domain account is specified in the configuration tool as the account to use when connecting to the ReportServer database as well. The web service setting in the configuration tool is configured to use the Local Service account. Had I not had 3 other servers running correctly, I would have tried setting the web service to the domain account as well.

Reporting Services uses to local groups named SQLServer2005ReportingServicesWebServiceUser$MachineName$Instance and SQLServer2005ReportServerUser$MachineName$Instance, and I compared those groups between my two staging servers, and the users were the same (WebServiceUser had my domain account and ReportServerUser had Local Service). I next comapred the permissions on the folders in %Program Files%\Microsoft SQL Server\MSSQL.1\Reporting Services between both machines, and they were the same.

I decided to reboot the problem server while I went and downloaded the latest version of Process Monitor, which happens to be at v1.33. I wish I could say I found some whacky permission that didn't get set by the configuration tool, but, rebooting the server seems to have fixed the problem. I know I restarted the Reporting Services window service, but I don't think I tried restarting IIS and the app pool. Oh well, I'm sure my download of Process Monitor will not be in vain.

Other Notes

Overall the how to install and configure for server 2008 guide was pretty good. The registry keys that say that you should have don't seem to be all that important, as I was missing some of them on my working servers from the get go. I did follow the steps to enable my account to login to the report manager without using the Run As Administrator command.

Friday, June 06, 2008 9:40:25 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Sql
# Thursday, June 05, 2008

Even though I have no intention of directly exposing reporting services to the Internet, I still felt that it made the most sense to install the web front end components for SQL RS on our web servers located in our presentation DMZ. However, this proved to be somewhat of a challenge.

Apparently, there is a check in the setup file that limits your installation options on Server 2008 web edition to the client tools only. It took awhile of searching on Google, but I finally found my first lead, and am embarrassed because I didn't think of it myself. All of the various SQL components have their own MSI installers on the install media, located in either Tools or Servers. For reporting services, you need to run the SqlRun_RS.msi located in Servers\Setup.

I was still running into a problem however, soon after the MSI was launched I was getting a cryptic error message, followed by a second error message stating I didn't have access to a directory. Even though I had launched windows explorer as an administrator, I still couldn't get it to run. I decided to turn off UAC, reboot and try again. This time, the install was successful. I followed up the Sql RS install by installing SQL SP2, and then turned UAC back on.

Microsoft has a good document on how to configure SQL RS on Windows Server 2008, http://support.microsoft.com/kb/938245, which is what I used for the rest of the install. The document does state that under More Information that  you can install SQL RS "On any edition of Windows Server 2008".

Thursday, June 05, 2008 4:14:00 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Sql
# Saturday, May 31, 2008

I think it's probably one of the nicest Saturday's of the year so far, but I thought it would be more fun to uninstall our Trial edition of TFS 2008 and install the work edition. Here are the steps I took:

  • Using Windows Firewall block access to TFS and Sharepoint
  • Backup all databases to another server
  • Take a VMWare snapshot
  • Uninstall TFS 2008
  • Uninstall TFS Build 2008 ( I don't think this was necessary)
  • Install TFS 2008 Workgroup **
  • Install TFS 2008 Build
  • Test Locally
  • Remove firewall restrictions
  • Test Remotely
  • Remove snapsot

Things were going smoothly until I was installing TFS Workgroup, and during the database upgrade (not sure why my DBs were different between the Trial and Workgroup Edition) I got an awesome error:

Product: Microsoft Visual Studio 2008 Team Foundation Server - ENU -- Error 32000.The Commandline

'"E:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Tools\TfsDb.exe" upgrade /server:"YourTFSServerName" /property:"TFS_SERVICE_ACCOUNT=DOMAIN\tfsserviceAccount;

TFS_REPORTING_ACCOUNT=Domain\tfsreportsAccount;

LCID=1033;VSTF_AS_INSTANCE=YourTFSDBInstance;

VSTF_AS_DATABASE=TFSWarehouse;VSTF_AS_ACCOUNT=" /showui:2622014' returned non-zero value: 100.

I decided to run the TFSdb tool from the command line, and it gives allot better information. According to the error, I needed to perform a backup log operation on my TfsWorkItemTracking database. So after doing that, that phase of the install process completed. The rest of the install process seemed to take forever, and the progress bar was about 97% to the end and just hung there for a good 3-4 minutes before it finally completed without error.

Saturday, May 31, 2008 11:35:34 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0] -
Technology
Archive
<June 2008>
SunMonTueWedThuFriSat
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

Copyright 2010
Adam Salvo
Sign In
Statistics
Total Posts: 234
This Year: 13
This Month: 1
This Week: 0
Comments: 34
Themes
Pick a theme:
All Content 2010, Adam Salvo
DasBlog theme 'Business' created by Christoph De Baene (delarou)