You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Tena Sakai <ts...@gallo.ucsf.edu> on 2009/10/14 03:54:09 UTC

svnadmin: Expected repository format '3' or '5'; found format '4'

Hi folks,

I am a complete novice at using subversion and I
am in need of help.

Here's the situation:

I have a subversion repository on a linux machine.
The path to the repository is /usr/local/svn/tsakai.
I have a project which is under ~/Projects/pivot and
I want to check in everything in this directory.
I issued:

 $ svn import ~/Projects/pivot file:///usr/local/svn/tsakai -m "initial import"

The machine's response was:
 svn: Can't open file '/usr/local/svn/tsakai/db/txn-current-lock': Permission denied

I asked:
 $ svnadmin lslocks /usr/local/svn/tsakai/db

And the response was:
 svnadmin: Expected repository format '3' or '5'; found format '4'

I asked a slightly different question:
 $ svnadmin lstxns /usr/local/svn/tsakai/db

and I got the same response:
 svnadmin: Expected repository format '3' or '5'; found format '4'

Next, I issued:
 $ svnadmin --version

and I got:
 svnadmin, version 1.6.5 (r38866)
   compiled Sep  1 2009, 12:49:51

 Copyright (C) 2000-2009 CollabNet.
 Subversion is open source software, see http://subversion.tigris.org/
 This product includes software developed by CollabNet (http://www.Collab.Net/).

 The following repository back-end (FS) modules are available:

 * fs_fs : Module for working with a plain file (FSFS) repository.

Can someone please tell me what is going on?

Is subversion upset becuase it doesn't like the repository
format I am using?

If so, what is the remedy?  Is this where dump/load is needed?

If not, what is the path forward?

I don't want anything fancy.  I don't want to use apache
portable library; I don't want to use berkeley db.  I want
to use something really basic (for now anyway).

Oh, one more thing.  When I issue:
 $ svn --version

It says:
 svn: could not initialize the SASL library

And when I type:
 $ svn

It melts down:
 Segmentation fault

Does this mean I don't have command line client?
Any suggestion?

I would really appreciate your help.

Thank you.

Tena Sakai
tsakai@gallo.ucsf.edu

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2407396

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

RE: svnadmin: Expected repository format '3' or '5'; found format '4'

Posted by Tena Sakai <ts...@gallo.ucsf.edu>.
Hi Ryan,

> That means your svn command is not only missing
> its SASL support, it's also missing its neon/serf
> support, without which it cannot connect to http
> repositories. You'll have to investigate why neon
> and/or serf are not present or working, and possibly
> reinstall them or your svn client.

I think the easiest and the safest thing to do is
to reinstall the entire subversion.  Is there any
risk I am unaware of, that you can think of?  Please
advise.

Thank you.

Regards,

Tena Sakai
tsakai@gallo.ucsf.edu

-----Original Message-----
From: Ryan Schmidt [mailto:subversion-2009b@ryandesign.com]
Sent: Wed 10/14/2009 9:55 PM
To: Tena Sakai
Cc: users@subversion.tigris.org
Subject: Re: svnadmin: Expected repository format '3' or '5'; found format '4'
 
On Oct 14, 2009, at 23:39, Tena Sakai wrote:

>> This still won't work because you're still trying
>> to access the repository files directly, using a
>> file:-protocol URL. Instead, access the repository
>> by going through the apache server that CollabNet
>> Subversion has set up for you, using the repository's
>> http:-protocol URL shown to you above.
>
>> $ svn import ~/Projects/pivot http://vixen.egcrc.org:8099/svn/ 
>> tsakai -m "initial import"
>
> I just did:
>
> $ svn import -m "initial import" ~/Projects/pivot http://vixen.egcrc.org:8099/svn/tsakai
>
> and it is not happy:
>
> svn: Unrecognized URL scheme for 'http://vixen.egcrc.org:8099/svn/ 
> tsakai'

That means your svn command is not only missing its SASL support, it's  
also missing its neon/serf support, without which it cannot connect to  
http repositories. You'll have to investigate why neon and/or serf are  
not present or working, and possibly reinstall them or your svn client.

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2407780

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

Re: svnadmin: Expected repository format '3' or '5'; found format '4'

Posted by Ryan Schmidt <su...@ryandesign.com>.
On Oct 14, 2009, at 23:39, Tena Sakai wrote:

>> This still won't work because you're still trying
>> to access the repository files directly, using a
>> file:-protocol URL. Instead, access the repository
>> by going through the apache server that CollabNet
>> Subversion has set up for you, using the repository's
>> http:-protocol URL shown to you above.
>
>> $ svn import ~/Projects/pivot http://vixen.egcrc.org:8099/svn/ 
>> tsakai -m "initial import"
>
> I just did:
>
> $ svn import -m "initial import" ~/Projects/pivot http://vixen.egcrc.org:8099/svn/tsakai
>
> and it is not happy:
>
> svn: Unrecognized URL scheme for 'http://vixen.egcrc.org:8099/svn/ 
> tsakai'

That means your svn command is not only missing its SASL support, it's  
also missing its neon/serf support, without which it cannot connect to  
http repositories. You'll have to investigate why neon and/or serf are  
not present or working, and possibly reinstall them or your svn client.

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2407779

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

RE: svnadmin: Expected repository format '3' or '5'; found format '4'

Posted by Tena Sakai <ts...@gallo.ucsf.edu>.
Hi Ryan,

> This still won't work because you're still trying
> to access the repository files directly, using a
> file:-protocol URL. Instead, access the repository
> by going through the apache server that CollabNet 
> Subversion has set up for you, using the repository's
> http:-protocol URL shown to you above.

> $ svn import ~/Projects/pivot http://vixen.egcrc.org:8099/svn/tsakai -m "initial import"

I just did:

 $ svn import -m "initial import" ~/Projects/pivot http://vixen.egcrc.org:8099/svn/tsakai

and it is not happy:

 svn: Unrecognized URL scheme for 'http://vixen.egcrc.org:8099/svn/tsakai'

I don't understand.  But when I give:

 http://vixen.egcrc.org:8099/viewvc/tsakai/

to firefox it is perfectly content.

Can you please tell me what this means?

Thank you in advance.

Regards,

Tena Sakai
tsakai@gallo.ucsf.edu

-----Original Message-----
From: Ryan Schmidt [mailto:subversion-2009b@ryandesign.com]
Sent: Wed 10/14/2009 8:33 PM
To: Tena Sakai
Cc: users@subversion.tigris.org
Subject: Re: svnadmin: Expected repository format '3' or '5'; found format '4'
 
On Oct 14, 2009, at 21:28, Tena Sakai wrote:

>> It sounds like the files and/or directories in /usr/local/svn/tsakai
>> are not owned by you, hence permission denied. Change their ownership
>> to you, or if this repository is for more than just testing out
>> Subversion's functionality, then set up svnserve or apache and change
>> the ownership of the files to the user you run svnserve or apache as.
>>>
>>
>
> The ownership of /usr/local/svn/tsakai is:
> drwxr-sr-x  6 root apache 4096 Aug 25 14:03 /usr/local/svn/tsakai


> I looked for
> Configure-CollabNet-Subversion and found the script in
> /opt/CollabNet_Subversion/bin directory and ran it.


>  Congratulations! You have successfully configured the CollabNet
>  Subversion server.
>
>  You can access your repositories at the following URL:
>  http://vixen.egcrc.org:8099/svn/YOUR-REPOS-NAME
>  http://vixen.egcrc.org:8099/viewvc/YOUR-REPOS-NAME


> At this point, I was curious about the ownership of my repository.
> I thought it might have changed.
>
> $ ll -d /usr/local/svn/tsakai
> drwxr-sr-x  6 csvn csvn 4096 Aug 25 14:03 /usr/local/svn/tsakai


> Encouraged, I went on to issue what I started with yesterday:
>
> $ svn import ~/Projects/pivot file:///usr/local/svn/tsakai -m  
> "initial import"
> svn: Can't open file '/usr/local/svn/tsakai/db/txn-current-lock':  
> Permission denied

This still won't work because you're still trying to access the  
repository files directly, using a file:-protocol URL. Instead, access  
the repository by going through the apache server that CollabNet  
Subversion has set up for you, using the repository's http:-protocol  
URL shown to you above.

$ svn import ~/Projects/pivot http://vixen.egcrc.org:8099/svn/tsakai - 
m "initial import"


> $ svn --version
> svn: Could not initialize the SASL library
>
> Here, too, the exit status was 1.
>
>> Do you have SASL installed? What version? How was it installed?
>
> I am not real clear on SASL.  I looked at directories /usr/lib/sasl
> and version numbers in this directory seem to be one of
> [0.0.7, 1.0.16, 1.0.17, 1.0.19, 1.0.20].  In /usr/lib/sasl2, there is
> only: 2.0.19.  /usr/lib64/sasl is like /usr/lib/sasl: [0.0.7, 1.0.16,
> 1.0.17, 1.0.19, 0.0.20].  Finally, /usr/lib64/sasl2 has only 2.0.19.
>
> I have no idea how any of them got installed.

Ok. I'm afraid I don't know anything about SASL either, other than  
that Subversion uses it. Maybe someone else here can help with this  
part of the problem. Maybe simply reinstalling CollabNet Subversion  
would help; I think it comes with everything you need to use  
Subversion, including SASL.


> $ sudo chown csvn /usr/local/bin/svnadmin
> $ sudo chown csvn /usr/local/bin/svn

There's no need to change the ownership of those binaries. You should  
probably keep them as they were (owned by root, I imagine).

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2407774

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

Re: svnadmin: Expected repository format '3' or '5'; found format '4'

Posted by Ryan Schmidt <su...@ryandesign.com>.
On Oct 14, 2009, at 21:28, Tena Sakai wrote:

>> It sounds like the files and/or directories in /usr/local/svn/tsakai
>> are not owned by you, hence permission denied. Change their ownership
>> to you, or if this repository is for more than just testing out
>> Subversion's functionality, then set up svnserve or apache and change
>> the ownership of the files to the user you run svnserve or apache as.
>>>
>>
>
> The ownership of /usr/local/svn/tsakai is:
> drwxr-sr-x  6 root apache 4096 Aug 25 14:03 /usr/local/svn/tsakai


> I looked for
> Configure-CollabNet-Subversion and found the script in
> /opt/CollabNet_Subversion/bin directory and ran it.


>  Congratulations! You have successfully configured the CollabNet
>  Subversion server.
>
>  You can access your repositories at the following URL:
>  http://vixen.egcrc.org:8099/svn/YOUR-REPOS-NAME
>  http://vixen.egcrc.org:8099/viewvc/YOUR-REPOS-NAME


> At this point, I was curious about the ownership of my repository.
> I thought it might have changed.
>
> $ ll -d /usr/local/svn/tsakai
> drwxr-sr-x  6 csvn csvn 4096 Aug 25 14:03 /usr/local/svn/tsakai


> Encouraged, I went on to issue what I started with yesterday:
>
> $ svn import ~/Projects/pivot file:///usr/local/svn/tsakai -m  
> "initial import"
> svn: Can't open file '/usr/local/svn/tsakai/db/txn-current-lock':  
> Permission denied

This still won't work because you're still trying to access the  
repository files directly, using a file:-protocol URL. Instead, access  
the repository by going through the apache server that CollabNet  
Subversion has set up for you, using the repository's http:-protocol  
URL shown to you above.

$ svn import ~/Projects/pivot http://vixen.egcrc.org:8099/svn/tsakai - 
m "initial import"


> $ svn --version
> svn: Could not initialize the SASL library
>
> Here, too, the exit status was 1.
>
>> Do you have SASL installed? What version? How was it installed?
>
> I am not real clear on SASL.  I looked at directories /usr/lib/sasl
> and version numbers in this directory seem to be one of
> [0.0.7, 1.0.16, 1.0.17, 1.0.19, 1.0.20].  In /usr/lib/sasl2, there is
> only: 2.0.19.  /usr/lib64/sasl is like /usr/lib/sasl: [0.0.7, 1.0.16,
> 1.0.17, 1.0.19, 0.0.20].  Finally, /usr/lib64/sasl2 has only 2.0.19.
>
> I have no idea how any of them got installed.

Ok. I'm afraid I don't know anything about SASL either, other than  
that Subversion uses it. Maybe someone else here can help with this  
part of the problem. Maybe simply reinstalling CollabNet Subversion  
would help; I think it comes with everything you need to use  
Subversion, including SASL.


> $ sudo chown csvn /usr/local/bin/svnadmin
> $ sudo chown csvn /usr/local/bin/svn

There's no need to change the ownership of those binaries. You should  
probably keep them as they were (owned by root, I imagine).

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2407766

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

RE: svnadmin: Expected repository format '3' or '5'; found format '4'

Posted by Tena Sakai <ts...@gallo.ucsf.edu>.
Hello Ryan,

Many thanks for your response.  I appreciate your comments
and suggestions.  If you don't mind, can I kick things around
a bit more with you?

} It sounds like the files and/or directories in /usr/local/svn/tsakai 
} are not owned by you, hence permission denied. Change their ownership 
} to you, or if this repository is for more than just testing out 
} Subversion's functionality, then set up svnserve or apache and change 
} the ownership of the files to the user you run svnserve or apache as.

The ownership of /usr/local/svn/tsakai is:
 drwxr-sr-x  6 root apache 4096 Aug 25 14:03 /usr/local/svn/tsakai

I asked myself: Is svnserve supposed to run as daemon?  And issued:

 $ ps axl | grep svnserve

and got nothing.  I went to /etc/init.d and found a script named
collabnet_subversion.  I typed:

 $ ./collabnet_subversion status

And the response was:

 Collabnet Subversion server not configured.
 Please run 'Configure-CollabNet-Subversion' to configure.

Surprised and intrigued by those 2 lines, I looked for
Configure-CollabNet-Subversion and found the script in
/opt/CollabNet_Subversion/bin directory and ran it.  There
was some dialog and it found the existing repositories
(including mine, /usr/local/svn/tsakai).  I mostly chose
default and gave a dns name, as well as the port number
(8099), and eventually told me:

 Starting CollabNet Subversion:                             [  OK  ]

  Congratulations! You have successfully configured the CollabNet
  Subversion server.

  You can access your repositories at the following URL:
  http://vixen.egcrc.org:8099/svn/YOUR-REPOS-NAME
  http://vixen.egcrc.org:8099/viewvc/YOUR-REPOS-NAME

Naturally, I told firefox to go to:
 http://vixen.egcrc.org:8099/svn/tsakai
and bingo!  It is working.

And to go to: http://vixen.egcrc.org:8099/viewvc/tsakai
This is fantastic.  I can look at everything I have ever checked in
and look at this and that.  Super!

At this point, I was curious about the ownership of my repository.
I thought it might have changed.

 $ ll -d /usr/local/svn/tsakai
 drwxr-sr-x  6 csvn csvn 4096 Aug 25 14:03 /usr/local/svn/tsakai

In fact, it did change.  (Previously, it was root (owner) and apache
(group owner).)  I proceeded with issuing two commands:

 $ svnadmin lslocks /usr/local/svn/tsakai
and it returned nothing with exit status of 0 
 $ echo $?
 0

The same with:
 $ svnadmin lstxns /usr/local/svn/tsakai
 $ echo $?
 0

Encouraged, I went on to issue what I started with yesterday:

 $ svn import ~/Projects/pivot file:///usr/local/svn/tsakai -m "initial import"
 svn: Can't open file '/usr/local/svn/tsakai/db/txn-current-lock': Permission denied
 
 $ echo $?
 1

Rats! is what I felt...   What's next?
I tried:

 $ svn --version
 svn: Could not initialize the SASL library

Here, too, the exit status was 1.

} Do you have SASL installed? What version? How was it installed?

I am not real clear on SASL.  I looked at directories /usr/lib/sasl
and version numbers in this directory seem to be one of
[0.0.7, 1.0.16, 1.0.17, 1.0.19, 1.0.20].  In /usr/lib/sasl2, there is
only: 2.0.19.  /usr/lib64/sasl is like /usr/lib/sasl: [0.0.7, 1.0.16,
1.0.17, 1.0.19, 0.0.20].  Finally, /usr/lib64/sasl2 has only 2.0.19.

I have no idea how any of them got installed.  (Maybe it is time
for a bit of disclosure...  We had a guy working as system administrator
and he was a good talker at the outset, but it turned out he had no
idea what he was doing and wound up wrecking many linux machines.
The machine I have been referring to is only one of them and some of
us were extremely upset.  The guy is no longer with us and I am trying
to resurrect what's been broken.)

I wanted to try something else (reaching out for straw).  Namely,

 $ sudo chown csvn /usr/local/bin/svnadmin
 $ sudo chown csvn /usr/local/bin/svn

Now the owner of /usr/local/svn/tsakai and that of svnadmin and
svn are all the same, I tried the same thing as before:

 $ svn import ~/Projects/pivot file:///usr/local/svn/tsakai -m "initial import"
and it told me the same thing as before:

 svn: Can't open file '/usr/local/svn/tsakai/db/txn-current-lock': Permission denied

So...  Where do I stand?  Maybe it amounts to:
1) How do I fix/reinstall SASL?
2) Should I reinstall subversion (1.6.2) from scratch?

Can you please comment and give me some suggestion for path forward?

Thank you.

Regards,

Tena Sakai
tsakai@gallo.ucsf.edu


-----Original Message-----
From: Ryan Schmidt [mailto:subversion-2009b@ryandesign.com]
Sent: Wed 10/14/2009 1:44 AM
To: Tena Sakai
Cc: users@subversion.tigris.org
Subject: Re: svnadmin: Expected repository format '3' or '5'; found format '4'
 
On Oct 13, 2009, at 22:54, Tena Sakai wrote:

> I have a subversion repository on a linux machine.
> The path to the repository is /usr/local/svn/tsakai.
> I have a project which is under ~/Projects/pivot and
> I want to check in everything in this directory.
> I issued:
>
>  $ svn import ~/Projects/pivot file:///usr/local/svn/tsakai -m  
> "initial import"
>
> The machine's response was:
>  svn: Can't open file '/usr/local/svn/tsakai/db/txn-current-lock':  
> Permission denied

It sounds like the files and/or directories in /usr/local/svn/tsakai  
are not owned by you, hence permission denied. Change their ownership  
to you, or if this repository is for more than just testing out  
Subversion's functionality, then set up svnserve or apache and change  
the ownership of the files to the user you run svnserve or apache as.


> I asked:
>  $ svnadmin lslocks /usr/local/svn/tsakai/db
>
> And the response was:
>  svnadmin: Expected repository format '3' or '5'; found format '4'
>
> I asked a slightly different question:
>  $ svnadmin lstxns /usr/local/svn/tsakai/db
>
> and I got the same response:
>  svnadmin: Expected repository format '3' or '5'; found format '4'

svnadmin needs to be pointed at the repository directory, not its db  
subdirectory, so if you want to list the locks and transactions, you  
need

svnadmin lslocks /usr/local/svn/tsakai

and

svnadmin lstxns /usr/local/svn/tsakai


> I don't want anything fancy.  I don't want to use apache
> portable library; I don't want to use berkeley db.  I want
> to use something really basic (for now anyway).

You are already using the Apache Portable Runtime library. It is not  
possible to use Subversion without it. It has nothing to do with using  
the Apache Web Server, which is of course optional.


> Oh, one more thing.  When I issue:
>  $ svn --version
>
> It says:
>  svn: could not initialize the SASL library

Do you have SASL installed? What version? How was it installed?


> And when I type:
>  $ svn
>
> It melts down:
>  Segmentation fault
>
> Does this mean I don't have command line client?

It means you have the command line client, and it crashes when you try  
to use it. That should not happen, of course. My first suggestion  
would be to investigate the SASL problem you already found.

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2407760

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].

Re: svnadmin: Expected repository format '3' or '5'; found format '4'

Posted by Ryan Schmidt <su...@ryandesign.com>.
On Oct 13, 2009, at 22:54, Tena Sakai wrote:

> I have a subversion repository on a linux machine.
> The path to the repository is /usr/local/svn/tsakai.
> I have a project which is under ~/Projects/pivot and
> I want to check in everything in this directory.
> I issued:
>
>  $ svn import ~/Projects/pivot file:///usr/local/svn/tsakai -m  
> "initial import"
>
> The machine's response was:
>  svn: Can't open file '/usr/local/svn/tsakai/db/txn-current-lock':  
> Permission denied

It sounds like the files and/or directories in /usr/local/svn/tsakai  
are not owned by you, hence permission denied. Change their ownership  
to you, or if this repository is for more than just testing out  
Subversion's functionality, then set up svnserve or apache and change  
the ownership of the files to the user you run svnserve or apache as.


> I asked:
>  $ svnadmin lslocks /usr/local/svn/tsakai/db
>
> And the response was:
>  svnadmin: Expected repository format '3' or '5'; found format '4'
>
> I asked a slightly different question:
>  $ svnadmin lstxns /usr/local/svn/tsakai/db
>
> and I got the same response:
>  svnadmin: Expected repository format '3' or '5'; found format '4'

svnadmin needs to be pointed at the repository directory, not its db  
subdirectory, so if you want to list the locks and transactions, you  
need

svnadmin lslocks /usr/local/svn/tsakai

and

svnadmin lstxns /usr/local/svn/tsakai


> I don't want anything fancy.  I don't want to use apache
> portable library; I don't want to use berkeley db.  I want
> to use something really basic (for now anyway).

You are already using the Apache Portable Runtime library. It is not  
possible to use Subversion without it. It has nothing to do with using  
the Apache Web Server, which is of course optional.


> Oh, one more thing.  When I issue:
>  $ svn --version
>
> It says:
>  svn: could not initialize the SASL library

Do you have SASL installed? What version? How was it installed?


> And when I type:
>  $ svn
>
> It melts down:
>  Segmentation fault
>
> Does this mean I don't have command line client?

It means you have the command line client, and it crashes when you try  
to use it. That should not happen, of course. My first suggestion  
would be to investigate the SASL problem you already found.

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2407453

To unsubscribe from this discussion, e-mail: [users-unsubscribe@subversion.tigris.org].