You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by stephen meechan <mg...@dsl.pipex.com> on 2004/08/10 23:33:24 UTC
No transaction name 'a80' running on NT4 system
Subversion 1.0.5 using svnserve.
OS NT 4.0 Server with SP 6.
Clients are Windows 2000 with TortoiseSVN.
The repository was migrated from CVS 10 days ago and was just gradually
being put to use.
When trying to check in a change there was an error reported that needed DB
recovery, unfortunately the person running it didn't save the exact message.
I stopped svnserve and ran svnadmin recover which came back ok with revision
at 13211.
Retrying the commit though came back with an error "No transaction named
'a80'. DB needs recovery". I ran recovery again, but this time also verify.
Verify goes through to 13210 and then reports the same error.
svnadmin lstxns has 4 transactions, a4s is from august 3rd, a82, a83 and a84
look like the original commit plus the retries.
svnadmin dump worked up to revision 13210 and I'm rebuilding the db now with
that. 13210 has the files that were changed Monday, so 13211 would only be
files changed Tuesday. The server was rebooted late Monday, other than that
there are no errors recorded.
Is it ok to use svnserve with NT4? I cant see anything on the site or
mailing list to indicate there might be problems.
Are there any tools to find out what has gone wrong with the db?
It looks like svnadmin hotcopy doesn't detect the error which implies I
could overwrite a good backup with one that has problems and not know it
unless I also do verify every time? Or is there a better way of doing it?
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: No transaction name 'a80' running on NT4 system
Posted by stephen meechan <mg...@dsl.pipex.com>.
> > 13211 is the lost revision, is there any way other than checking out a
new
> > working copy to get back in sync?
>
> I assume you want to use the WC to commit a replacement r13211 ?
>
> First "svn diff" and save any local mods since 13211, then "svn revert -R
."
> to get back to a clean 13211.
>
> Then delete each .svn directory and replace it with one from the same
> position in the tree, in a new checkout.
>
> Now you have a WC based on 13210 with the changes of 13211.
Thanks, I had to follow a different route in the end as there were 500 .svn
directories. The diff showed 12 files changed, so it was easiest to just
checkout the earlier revision and copy those file and commit again.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: No transaction name 'a80' running on NT4 system
Posted by Max Bowsher <ma...@ukf.net>.
stephen meechan wrote:
> One more follow up question, I've restored the repository up to revision
> 13210, but whenever I try to access it from the working copy I get the
error
>
> "svn : Reference to non-existent revision '13211' in filesystem"
>
> 13211 is the lost revision, is there any way other than checking out a new
> working copy to get back in sync?
I assume you want to use the WC to commit a replacement r13211 ?
First "svn diff" and save any local mods since 13211, then "svn revert -R ."
to get back to a clean 13211.
Then delete each .svn directory and replace it with one from the same
position in the tree, in a new checkout.
Now you have a WC based on 13210 with the changes of 13211.
Max.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: No transaction name 'a80' running on NT4 system
Posted by stephen meechan <mg...@dsl.pipex.com>.
----- Original Message -----
From: "stephen meechan" <mg...@dsl.pipex.com>
To: <us...@subversion.tigris.org>
Sent: Wednesday, August 11, 2004 12:33 AM
Subject: No transaction name 'a80' running on NT4 system
> Subversion 1.0.5 using svnserve.
>
> OS NT 4.0 Server with SP 6.
>
> Clients are Windows 2000 with TortoiseSVN.
>
> The repository was migrated from CVS 10 days ago and was just gradually
> being put to use.
>
> When trying to check in a change there was an error reported that needed
DB
> recovery, unfortunately the person running it didn't save the exact
message.
> I stopped svnserve and ran svnadmin recover which came back ok with
revision
> at 13211.
>
> Retrying the commit though came back with an error "No transaction named
> 'a80'. DB needs recovery". I ran recovery again, but this time also
verify.
> Verify goes through to 13210 and then reports the same error.
>
> svnadmin lstxns has 4 transactions, a4s is from august 3rd, a82, a83 and
a84
> look like the original commit plus the retries.
>
> svnadmin dump worked up to revision 13210 and I'm rebuilding the db now
with
> that. 13210 has the files that were changed Monday, so 13211 would only be
> files changed Tuesday. The server was rebooted late Monday, other than
that
> there are no errors recorded.
>
> Is it ok to use svnserve with NT4? I cant see anything on the site or
> mailing list to indicate there might be problems.
>
> Are there any tools to find out what has gone wrong with the db?
>
> It looks like svnadmin hotcopy doesn't detect the error which implies I
> could overwrite a good backup with one that has problems and not know it
> unless I also do verify every time? Or is there a better way of doing it?
>
One more follow up question, I've restored the repository up to revision
13210, but whenever I try to access it from the working copy I get the error
"svn : Reference to non-existent revision '13211' in filesystem"
13211 is the lost revision, is there any way other than checking out a new
working copy to get back in sync?
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: No transaction name 'a80' running on NT4 system
Posted by stephen meechan <mg...@dsl.pipex.com>.
> You've provided lots of detail (thanks!), from which I can tell that the
> failed commit has somehow been recorded in the revisions database, but its
> record in the transactions database is missing. It's hard to say how this
> corruption happened, or why the original failure occurred.
>
> Was anything happening to the server which could have caused the failure?
> I'm afraid it seems likely that the cause will remain a mystery :-(
The last commit for 13211 was at 18:50, the server was rebooted at 19:10.
The reason it was rebooted was because of some problem with the graphics
card, and it was hard reset rather than shutdown. I would think though the
db files had been flushed by then.
> > It looks like svnadmin hotcopy doesn't detect the error which implies I
> > could overwrite a good backup with one that has problems and not know it
> > unless I also do verify every time? Or is there a better way of doing
it?
>
> Unfortunately, this is quite correct. Hotcopy only verifies that the
result
> is a valid to Berkeley DB. It doesn't check that the data stored within
the
> Berkeley DBs is valid to subversion.
The time consuming part was having to reload the repository from the dump
file, I'm now looking at FSFS as that seems to do that much faster.
What I really wanted to do though was just roll the repository back to use
that earlier revision from svnadmin, discarding the revision that's now
causing the error. I'm not losing any more than I am by having to go to the
backup, but I'd save a lot of time. I've no idea if the design could be
changed to do that, but it would certainly help once a problem has happened.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: No transaction name 'a80' running on NT4 system
Posted by Max Bowsher <ma...@ukf.net>.
stephen meechan wrote:
> Subversion 1.0.5 using svnserve.
>
> OS NT 4.0 Server with SP 6.
>
> Clients are Windows 2000 with TortoiseSVN.
>
> The repository was migrated from CVS 10 days ago and was just gradually
> being put to use.
>
> When trying to check in a change there was an error reported that needed
DB
> recovery, unfortunately the person running it didn't save the exact
message.
> I stopped svnserve and ran svnadmin recover which came back ok with
revision
> at 13211.
>
> Retrying the commit though came back with an error "No transaction named
> 'a80'. DB needs recovery". I ran recovery again, but this time also
verify.
> Verify goes through to 13210 and then reports the same error.
>
> svnadmin lstxns has 4 transactions, a4s is from august 3rd, a82, a83 and
a84
> look like the original commit plus the retries.
>
> svnadmin dump worked up to revision 13210 and I'm rebuilding the db now
with
> that. 13210 has the files that were changed Monday, so 13211 would only be
> files changed Tuesday. The server was rebooted late Monday, other than
that
> there are no errors recorded.
>
> Is it ok to use svnserve with NT4? I cant see anything on the site or
> mailing list to indicate there might be problems.
It should be OK.
> Are there any tools to find out what has gone wrong with the db?
There are few who have taken the time to comprehend the schema of the
subversion database. I'm one of them :-)
You've provided lots of detail (thanks!), from which I can tell that the
failed commit has somehow been recorded in the revisions database, but its
record in the transactions database is missing. It's hard to say how this
corruption happened, or why the original failure occurred.
Was anything happening to the server which could have caused the failure?
I'm afraid it seems likely that the cause will remain a mystery :-(
> It looks like svnadmin hotcopy doesn't detect the error which implies I
> could overwrite a good backup with one that has problems and not know it
> unless I also do verify every time? Or is there a better way of doing it?
Unfortunately, this is quite correct. Hotcopy only verifies that the result
is a valid to Berkeley DB. It doesn't check that the data stored within the
Berkeley DBs is valid to subversion.
Max.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org