You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by "Kahn, Peter" <Pe...@ironmountain.com> on 2006/02/23 17:35:36 UTC
>Bdb to FSFS - Any gotchas to watch out for>
Hi, I ran into a problem with my repository that has finally convinced
me to convert from BDB to FSFS for my repository backend. I'd like to
thank you all for all the help you have given me over the past 18 months
as it has been essential in keeping my environment up and my blood
pressure down.
My latest problem was that users got "bdb: Lock table is out of
available locker entries" upon commit. I ran out of lockers and my fix
was to recover followed by changing the lk_max_ settings from 2000 to
8000. The choice of value was arbitrary as I wasn't sure how determine
just how many database trees I had as recommending in the Sleepykat
tuning page.
I have a Linux based 7 GB repository with about 25000 revisions that is
accessed through svnserve and apache. It seems like a large environment
to me and I am pretty sure that I will hit more tuning issues with BDB
as I go forward. I don't have the time to become a BDB tuning expert
(although it is interesting).
I am using the conversion method I saw on this list and I should be down
for about 3 hours:
svnadmin create --fs-type FSFS ./repos_fsfs >> log 2>&1
svnadmin dump ./repos | svnadmin load ./repos_fsfs >> log 2>&1
I looked in the FSFS repository for tuning options, didn't really find
any and I really want to proactive on tuning/monitoring (I have some
cron jobs now dumping the output of db_stat into a file). So, with that
in mind here are my questions:
Q1. What tuning options are there for FSFS repositories?
is there a good guide somewhere?
Q2. What is the best way to monitor a FSFS repository?
Q3. What are the gotchas for converting to a FSFS repository?
- all local developer workspaces will need to be checked-out
anew
as switch will not work due to the fact that the old repos and
the new will be two different repositories
Q4. What are the gotchas for running a FSFS repository?
Q5. What are the best practices for FSFS repository health?
- Is there some thing I should do on a regular basis
to handle skip-deltas and delta combination to improve
performance? [deltify?]
Q6. What kinds of corruption do people see with FSFS and how have they
dealt with it?
The red bean book say "FSFS's inability to be 'wedged'
when something goes wrong" but I'm wondering if anyone
has seen problems?
- should a rev file go missing due to file system error or
operator error what would my options be?
|| could I extract the file off of a backup and insert
|| in into the right location to recover it?
Again thanks for all the help....
Related Docs:
http://blog.parthenoncomputing.com/dbxml/archives/2005/03/index.html
http://www.sleepycat.com/xmldocs/ref/lock/max.html
http://svnbook.red-bean.com/nightly/en/svn.reposadmin.html#svn.reposadmi
n.basics.backends
http://svn.collab.net/repos/svn/trunk/subversion/libsvn_fs_fs/structure
--
Peter Kahn
peter.kahn@ironmountain.com
Mobile: 508-958-2996
IM: pkahn@imserver, citizenkahn@jabber80.com,
citizenkahn@googletalk.com, citizen_kahn@yahoo.com
Iron Mountain Digital
-----------------------------------------
The information contained in this email message and its attachments
is intended only for the private and confidential use of the
recipient(s) named above, unless the sender expressly agrees
otherwise.
Transmission of email over the Internet is not a secure
communications medium. If you are requesting or have requested the
transmittal of personal data, as defined in applicable privacy laws
by means of email or in an attachment to email, you must select a
more secure alternate means of transmittal that supports your
obligations to protect such personal data.
If the reader of this message is not the intended recipient and/or
you have received this email in error, you must take no action
based on the information in this email and you are hereby notified
that any dissemination, misuse or copying or disclosure of this
communication is strictly prohibited. If you have received this
communication in error, please notify us immediately by email and
delete the original message.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: >Bdb to FSFS - Any gotchas to watch out for>
Posted by Ryan Schmidt <su...@ryandesign.com>.
On Feb 23, 2006, at 18:35, Kahn, Peter wrote:
> Q1. What tuning options are there for FSFS repositories?
> is there a good guide somewhere?
I'm not aware of any tuning options.
> Q2. What is the best way to monitor a FSFS repository?
I'm not aware of any FSFS-specific things that would need to be
monitored. You can of course write a post-commit hook which sends an
email to your team with the diff of the changes in that revision, so
that your developers can monitor each other's changes, but that has
nothing to do with your choice of BDB or FSFS.
> Q3. What are the gotchas for converting to a FSFS repository?
> - all local developer workspaces will need to be checked-out
> anew
> as switch will not work due to the fact that the old repos and
> the new will be two different repositories
All working copies should continue to function as they did before.
You do not need to check them out again. The new repository will have
the same repository ID as the one from which it was dumped so clients
will see it as exactly the same repository.
> Q4. What are the gotchas for running a FSFS repository?
>
> Q5. What are the best practices for FSFS repository health?
> - Is there some thing I should do on a regular basis
> to handle skip-deltas and delta combination to improve
> performance? [deltify?]
I'm not aware of any routine maintenance that would be necessary. We
haven't done any on our FSFS repo in its 1-year life, except dump and
reload it when moving from Subversion 1.1 to 1.2 to get the faster
delta algorithm. Keeping regular backups is of course a very good
idea, and occasionally testing that those backups are functional is
worth it too.
> Q6. What kinds of corruption do people see with FSFS and how have they
> dealt with it?
> The red bean book say "FSFS's inability to be 'wedged'
> when something goes wrong" but I'm wondering if anyone
> has seen problems?
There is one issue I've heard reported on the list a couple times,
where with the repository on a Linux server, a commit that's larger
than 2GB will get truncated to 2GB, even though the client is
informed that the commit was successful:
http://subversion.tigris.org/issues/show_bug.cgi?id=2453
Looks like this was a problem in APR and was fixed just a few weeks
ago in their repository, and will be in the next version of APR 1.2.
This bug has also come up on the list a few times and sounds pretty bad:
http://subversion.tigris.org/issues/show_bug.cgi?id=2467
Here's the list of open FSFS issues in the bug tracker; may want to
look at them too:
http://subversion.tigris.org/issues/buglist.cgi?
short_desc=fsfs&component=subversion&issue_status=NEW&issue_status=START
ED&issue_status=REOPENED&short_desc_type=substring&cmdtype=doit
> - should a rev file go missing due to file system error or
> operator error what would my options be?
>
> || could I extract the file off of a backup and insert
> || in into the right location to recover it?
Keeping a hot-backup of the repository is probably a good idea, in
addition to dumps of either the whole thing and/or individual
revisions or ranges of revisions incrementally.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org