URGENT: Vault is messed up -- listintg two repositories...

If you are having a problem using Vault, post a message here.

Moderator: SourceGear

Post Reply
onovotny
Posts: 33
Joined: Fri Mar 19, 2004 9:54 am

URGENT: Vault is messed up -- listintg two repositories...

Post by onovotny » Sat Aug 14, 2004 3:00 pm

..and missing lots of files/folders!!!

This is a pseudo-public server -- go to http://novotny.org:81/vaultservice/vaultweb (login/pass: guest) to see. There used to be only one repository showing, Aimutation. Now there are two. When I use the client it prompts me for two diffferent versions of the repository now. It's also missing files/folders. There should be at least 7 subfolders of Aimutation but only one is showing up.

Due to the stored procs being encrypted, I can't totally trace the cause. But, based on the data from the execution plan of spgetrepositories, it appears that the join of tbltreerevisionfolders is outputing two records when I suspect that it should be outputing one record (just the single repository).

Please help! I don't know how/why this happened but we need this fixed ASAP!

Feel free to email me to take this offline; the forum should have my email address listed.

Thanks,
--Oren

jclausius
Posts: 3702
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Sun Aug 15, 2004 7:54 pm

Oren:

Off the top of my head, I'd say your tree has two roots. Or in DB layer terms - there are two rows in tbltreerevisionfolders for the repositories latest transaction with a tree level = 0 (root).

To be honest, I'm not sure why you would have two roots. Do you know what happened before the double listing? Any transactions besides add folder, add file, checkin/modify in the last couple of weeks? Was anyone modifying / adding the sgvault database's triggers, stored procedures, or anything else at the DB layer? Possibly a DB restoration or anything of the type?

Do you have a relatively current backup (last 12 hours or so), in which the repository is unaffected? If so, you may want to do a restore.

If not, to sync things back up, we'll have to modify tbltreerevisionolders and possibly examine tblfolderentries for consitency. Unfortunately, I'm out of the office right now, so you can send me an e-mail tomorrow, and we'll resolve the problem off-forum. ( Just click the email button below. )
Jeff Clausius
SourceGear

jclausius
Posts: 3702
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Sun Aug 15, 2004 8:44 pm

Oren:

One other quick question...

What is the Vault server's configuration? ( OS / IIS version / .Net Framework version )?

By chance have you configured the Vault server to run under ASP.Net 2.0 / .Net 2.0 Framework (Beta)?
Last edited by jclausius on Mon Aug 16, 2004 10:15 am, edited 2 times in total.
Jeff Clausius
SourceGear

onovotny
Posts: 33
Joined: Fri Mar 19, 2004 9:54 am

Post by onovotny » Mon Aug 16, 2004 5:48 am

Thanks, email sent.

--Oren

jclausius
Posts: 3702
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Mon Aug 16, 2004 10:13 am

This turned out to be a nasty problem.

Oren was using Vault on a .Net 2.0 Framework based server. Unfortunately, there are some inconsistencies in the Framework, which caused the server to not be able to re-create his source tree.

The solution at this point is to start fresh, using Vault on a 1.1 .Net Framework based machine.

[quick addendum]
This problem will be addressed in Vault 2.1. Until that point, please stick within the 1.1 .Net Framework.
Jeff Clausius
SourceGear

baparks
Posts: 3
Joined: Tue Feb 28, 2006 8:49 pm

Two repositories

Post by baparks » Tue Feb 28, 2006 8:56 pm

I'm having this same exact same issue with Vault 2.0.9 (I know -- time to upgrade, but I have a client using the same version, so I'm waiting until they upgrade).
I just installed 2.0 Framework on the server and now I'm exhibiting the same problems (2 repositories returned in Vault admin tool).
I switched the vaultservice and vaultshadowfolder virtual directories back to 1.1 after I realized the problem, but no luck.

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Wed Mar 01, 2006 11:41 am

Your best course of action is to restore a backup of the database. You might need to reinstall Vault 2.0.6 as well (there was no 2.0.9 version, as far as I know.).
Linda Bauer
SourceGear
Technical Support Manager

baparks
Posts: 3
Joined: Tue Feb 28, 2006 8:49 pm

Post by baparks » Wed Mar 01, 2006 11:45 am

You're correct -- it is 2.0.6...sorry about that. As luck would have it, my backups started failing a week ago, so the last good backup I have is from a week ago. I agree...I'd prefer to restore, but that won't work in this case...is there another alternative?

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Wed Mar 01, 2006 1:35 pm

Sorry, no. The database has been fundamentally altered (different hash codes, etc.) and Vault can no longer build the tree.
Linda Bauer
SourceGear
Technical Support Manager

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Wed Mar 01, 2006 2:12 pm

Some suggestions:

We'd recommend uninstalling Vault, then uninstalling the 2.0 Framework.

Then register the 1.1 Framework:
At a command prompt, type the following, and then press ENTER:
"%windir%\Microsoft.NET\Framework\version\aspnet_regiis.exe" -i
In this path, version represents the version number of the .NET Framework that you installed on your server. You must replace this placeholder with the actual version number when you type the command.
Restore your last known good version of the sgvault database. Re-install Vault 2.0.6.

The files in users' local working directories will most likely be later versions than the versions in the database. Status may be Renegade (not checked out) or Edited (checked out). Checkout renegade files without overwriting the local file (or temporarily use CVS mode and commit), and checkin the checked out files to at least get the latest versions of your files back into the database.
Linda Bauer
SourceGear
Technical Support Manager

baparks
Posts: 3
Joined: Tue Feb 28, 2006 8:49 pm

Post by baparks » Wed Mar 01, 2006 2:15 pm

Thanks for the info. I have a few follow-ups:
a) I'm not sure of the details of the problem based on previous post...is it possible to run that version of vault on a server with aspnet 1.1 and 2.0 installed, as long as I run the vaultservices site in an applicaton pool with only 1.1 apps?
b) I'd like to upgrade, but I have a customer who is still using this old version and I need to connect to their server periodically. Is it possible for me to run both versions of the client on my machine -or- is the latest client backward compatible with the older versions?

lbauer
Posts: 9736
Joined: Tue Dec 16, 2003 1:25 pm
Location: SourceGear

Post by lbauer » Wed Mar 01, 2006 5:25 pm

a) I'm not sure of the details of the problem based on previous post...is it possible to run that version of vault on a server with aspnet 1.1 and 2.0 installed, as long as I run the vaultservices site in an applicaton pool with only 1.1 apps?
We've spent half the afternoon experimenting with 2.0.6 on Win2003 with the different frameworks, but didn't come up with a definitive answer.

Vault 2.0.6 may run under the 2.0 Framework, but if your database was created under 1.1, the database won't work in the 2.0 Framework. The first transaction will cause the repository problem you have already encountered.

It might work if you register the 1.1 Framework and then restore the good database, and reinstall Vault. But having the 2.0 Framework on the machine may still cause problems.

The two best options are:

1 -- Run Vault 2.0.6 on a machine that does not have the .NET Framework 2.0

2. Upgrade to Vault 3.1.7, which supports either 1.1 or 2.0 of the .NET Framework. To do this, you would uninstall Vault 2.0.6, restore the good copy of the database and then install the new version of Vault. You can purchase Gold Support to upgrade your licenses.

https://store.sourcegear.com/sgstore/va ... grade.aspx
b) I'd like to upgrade, but I have a customer who is still using this old version and I need to connect to their server periodically. Is it possible for me to run both versions of the client on my machine -or- is the latest client backward compatible with the older versions?
You should still be able to run a Vault 2.0.6 client on the same machine.

http://support.sourcegear.com/viewtopic.php?t=4010
Linda Bauer
SourceGear
Technical Support Manager

Post Reply