You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Lieven Govaerts <lg...@mobsol.be> on 2006/07/17 08:55:54 UTC

svnlook dirs-changed creates __db files in fsfs repository

Hi,


we have installed Subversion 1.3.2 on Suse SLES9 on a test server. Server type
is apache, version 2.0.54.

In the installed hook scripts we check for the changed dirs using:
COMMITFILES=`svnlook dirs-changed -t $TXN $REPOS`

This has working fine on our 1.2.3 production server.

With svn 1.3.2 I see that whenever I commit to a fresh FSFS repository, the call
to svnlook will create some files in the repo/db folder:

-rw-r--r--  1 svntest svntest  16384 2006-07-17 10:32 __db.001
-rw-r--r--  1 svntest svntest 278528 2006-07-17 10:32 __db.002
-rw-r--r--  1 svntest svntest  98304 2006-07-17 10:32 __db.003
-rw-r--r--  1 svntest svntest 450560 2006-07-17 10:32 __db.004
-rw-r--r--  1 svntest svntest  16384 2006-07-17 10:32 __db.005
-rw-r--r--  1 svntest svntest     64 2006-07-17 10:32 log.0000000001

I suppose these are BDB files, but since the repo is FSFS I can't understand why
these files are created. Is this a bug or a problem of building svn?

If I remove the svnlook dirs-changed line no __db files are created. The commit
works fine in both cases.

Some more info about our installation:
$ ./configure --prefix=/usr/local/svn/svn --exec-prefix=/usr/local/svn/svn
--with-apxs=/usr/local/svn/apache/bin/apxs

$ cat db/fs-type
fsfs

$ cat hooks/pre-commit
#!/bin/bash

REPOS="$1"
TXN="$2"
COMMITFILES=`svnlook dirs-changed -t $TXN $REPOS`
echo "COMMITFILES: $COMMITFILES" >> /tmp/pre-commit.log

exit 0

$ svn --version
svn, version 1.3.2 (r19776)
   compiled Jun 20 2006, 14:05:30
[..]

$ svnlook --version
svnlook, version 1.3.2 (r19776)
   compiled Jun 20 2006, 14:05:30
[..]
The following repository back-end (FS) modules are available:

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

Lieven.


----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svnlook dirs-changed creates __db files in fsfs repository

Posted by Lieven Govaerts <lg...@mobsol.be>.
Quoting Max Bowsher <ma...@ukf.net>:

>
> Since hook scripts run with a cleared PATH, it is impossible for the
> quoted hook to be invoking /usr/local/svn/svn/bin/svnlook.  It appears
> it is finding some much older version of svnlook instead, lying
> somewhere upon bash's default PATH.

Silly, should have known that myself. Subversion 1.0 is installed in /usr/bin (I
don't know why, it's not installed on the prod. machine).

> PS: Strictly speaking, this is material for users@ :-)
Yep, but I was so sure that from our side everything was installed correctly :)

Lieven.




----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: svnlook dirs-changed creates __db files in fsfs repository

Posted by Max Bowsher <ma...@ukf.net>.
Lieven Govaerts wrote:
> we have installed Subversion 1.3.2 on Suse SLES9 on a test server. Server type
> is apache, version 2.0.54.
> 
> In the installed hook scripts we check for the changed dirs using:
> COMMITFILES=`svnlook dirs-changed -t $TXN $REPOS`
> 
> This has working fine on our 1.2.3 production server.
> 
> With svn 1.3.2 I see that whenever I commit to a fresh FSFS repository, the call
> to svnlook will create some files in the repo/db folder:
> 
> -rw-r--r--  1 svntest svntest  16384 2006-07-17 10:32 __db.001
> -rw-r--r--  1 svntest svntest 278528 2006-07-17 10:32 __db.002
> -rw-r--r--  1 svntest svntest  98304 2006-07-17 10:32 __db.003
> -rw-r--r--  1 svntest svntest 450560 2006-07-17 10:32 __db.004
> -rw-r--r--  1 svntest svntest  16384 2006-07-17 10:32 __db.005
> -rw-r--r--  1 svntest svntest     64 2006-07-17 10:32 log.0000000001
> 
> I suppose these are BDB files, but since the repo is FSFS I can't understand why
> these files are created. Is this a bug or a problem of building svn?
> 
> If I remove the svnlook dirs-changed line no __db files are created. The commit
> works fine in both cases.
> 
> Some more info about our installation:
> $ ./configure --prefix=/usr/local/svn/svn --exec-prefix=/usr/local/svn/svn
> --with-apxs=/usr/local/svn/apache/bin/apxs
> 
> $ cat db/fs-type
> fsfs
> 
> $ cat hooks/pre-commit
> #!/bin/bash
> 
> REPOS="$1"
> TXN="$2"
> COMMITFILES=`svnlook dirs-changed -t $TXN $REPOS`
> echo "COMMITFILES: $COMMITFILES" >> /tmp/pre-commit.log
> 
> exit 0
> 
> $ svn --version
> svn, version 1.3.2 (r19776)
>    compiled Jun 20 2006, 14:05:30
> [..]
> 
> $ svnlook --version
> svnlook, version 1.3.2 (r19776)
>    compiled Jun 20 2006, 14:05:30
> [..]
> The following repository back-end (FS) modules are available:
> 
> * fs_base : Module for working with a Berkeley DB repository.
> * fs_fs : Module for working with a plain file (FSFS) repository.


Since hook scripts run with a cleared PATH, it is impossible for the
quoted hook to be invoking /usr/local/svn/svn/bin/svnlook.  It appears
it is finding some much older version of svnlook instead, lying
somewhere upon bash's default PATH.

PS: Strictly speaking, this is material for users@ :-)

Max.