Software Development
Blogs and Discussion
developer.*
Books Articles Blogs Subscribe d.* Gear About Home

Forced Source Control Checkouts in SSIS BIDS Solution

I learned today that the new Visual Studio/SSIS "Business Intelligence Development Studio" (BIDS) has some trouble when multiple people are working on multiple SSIS Packages within the same Solution.

Imagine this scenario:

Myself and another developer on the same team are working on Package A and Package B, which are part of the same SSIS Solution. I have Package A checked out and my counterpart is working on Package B--sometimes he has it checked out, and sometimes not (like when he's gone home for the night).

Regardless of whether he has the package checked out or not, I still need to be able to *look* at his package without checking it out. This is normal behavior any programmer would expect in an IDE. For one thing, there's no need to check it out, because I'm not planning on changing anything, but more importantly, his package is in a half-done state, and I want to keep my local copy, which is a stable version from a few revs back. (We're using VSS so developers don't have private check-in areas for incomplete work.)

The problem is that BIDS keeps forcing a checkout when I open the other package (the one my teammate is working on). It's happened once when I drilled into a data flow task, and another time when I was just looking at the variables window. Suddenly a window pops up announcing that a checkout is taking place, and before I know it I've got a mess on my hands, with multiple modal error dialogs popping up, caused in part because BIDS is now loading a version of the package that contains incomplete work and references to dtsconfig file entries that I don't have locally. I imagine some other series of errors would occur if my teammate *did* have it checked out and the attempt to write to the package was foiled.

I think it has something to do with the background validation that's going on; some part of the SSIS validation process realizes that it needs to write to the package, so Visual Studio obliges by checking out the file.

Has anyone else run into this issue? Any suggestions? Please comment below. If I find a workaround I'll update this post.

Update: I tried an experiment to use the File->Source Control->Change Source Control menu to disconnect my BIDS session from source control (uncheck the checkboxes in the grid in the dialog box that comes up). It seems to have worked OK for my purposes. After disconnection from source control, I drilled into a data flow in the read only package (which is what seems to reliably trigger this forced checkout) and sure enough it tried to check out. A few confirmation dialogs in a row popped up, and I kept indicating to not checkout/cancel/ignore.

Finally after several "Cancel" and "OK" button clicks, a dialog box with this text came up:

The connectors could not be refreshed for the following paths:
   Path 'InsertPath' (ID: 16993): The checkout was canceled by the user.
  Path 'UpdatePath' (ID: 16987): The checkout was canceled by the user.

"InsertPath" and "UpdatePath" happen to be two names for branches in a Conditional Split transform in this data flow. So this tells maybe tells us something about what background process is causing this. The good news is that after the flurry of dialogs I was able to proceed with my poking around in the data flow in the read only package. I imagine I'll have to go through this again if I go back and forth between the control of flow and the data flow. Ugh.

Changing topics only slightly, I'm coming more and more to the opinion that the ubiquitous modality of BIDS for SSIS is a fatal flaw that makes the tool almost unusable for projects of significant size. Because of all the modality there is just no way to get any kind of productivity traction, even after getting over the steep learning curve. And the keyboard-mouse switching is just killing my right arm. On my second major SSIS package I pushed a *lot* more code down to normal .NET DLLs to minimize the development in SSIS.

Dan

We run into this problem

We run into this problem daily. We had it with VSS and not suprisingly with TFS now. TFS however does not get the latest version like VSS, which can be very frustrating until you start remembering that. Either way I don’t know how to stop it, and haven't quite got round to working out exactly why.

SSIS

Can we have a Data flow withour Source?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Recent comments

User login

About our advertising.

Atom Feed

developer.* Blogs also has an Atom feed, located at this url.

Click here for more information about Atom.

A Jolt Award Finalist
Software Creativity 2.0
Foreword by Tom DeMarco

Recent Posters

Based on most recent 60 days, sorted by # of posts and name.

Google
Web developer.*

Who's online

There are currently 0 users and 20 guests online.

Syndicate

Syndicate content
All views expressed by authors, bloggers, and commentors are their own and do not necessarily reflect the views of developer.* or its proprietors.
Click to read the Copyright Notice.

All content copyright ©2000-2005 by the individual specified authors (and where not specified, copyright by Read Media, LLC). Reprint or redistribute only with written permission from the author and/or developer.*.

www.developerdotstar.com