[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: RE: RE: Multiple projects in one repository!

From: Bill Tutt <rassilon_at_lyra.org>
Date: 2002-05-03 18:54:29 CEST

It's stored as a string atm. When you begin having 4.3 billion commits
in the same repository, you begin to have much more annoying problems to
deal with. (i.e. you'll begin to have performance issues of one form or
another) You'd need to archive off data in some appropriate fashion.

 

There's also no reason that the repository revision number couldn't also
be stored as a fixed-precision decimal type in a SQL based store with no
precision to the right of the decimal point.

 

It also could be stored as a base-64 incrementing string type as well.
Maybe keeping the revision number as a non-decimal number would get
people to stop complaining about there only being one of them. :)

 

In short, I wouldn't worry too much about the problem. If you think
you've got so many developers that you're going to have 4.3 billion
commits in a relatively short period of time, I'd submit that you're
nuts to think you'd want that ALL in one Subversion repository.

 

Heck, even the entire shipped NT source base is stored in multiple
repositories, and that's a great example of an obscenely large
development code base.

 

Bill

 

-----Original Message-----
From: Steven Velez [mailto:svelez@alventive.com]
Sent: Friday, May 03, 2002 9:44 AM
To: dev@subversion.tigris.org
Subject: RE: RE: Multiple projects in one repository!

 

The global repository revision has been something that I have never
really been comfortable with since I started following subversion
development. Some of it is because it's not what I'm used to but, more
of it is it seems that it good gets too big fast. I mean, how is that
revision number stored? Even if it's a unsigned 32 bit integer, I would
not feel comfortable saying, "Well, you can make 4.3 billion separate
commits to the repository and then you're hosed." It would be a bigger
problem in bigger code-bases with more developers...... however, I'm
sure this has already been considered and I'm just showing my ignorance
but I would feel better to know the detail here in particular.

----------------------------
  .-. | Steven Velez
  oo| | Software Engineer
 /`'\ | alventive
(\_;/) | 678-202-2226

-----Original Message-----
From: Bill Tutt [mailto:rassilon@lyra.org]
Sent: Friday, May 03, 2002 12:19 PM
To: 'Anders Hanson'; dev@subversion.tigris.org
Subject: RE: RE: Multiple projects in one repository!

 

You know, the revision number that's attached to the repository as a
whole is meaningless from a user's perspective. It's an internal
mechanism that accomplishes the goal of the underlying schema design. It

just so happens to be exposed so that the user's interface can sometimes

be a little more convenient to communicate numbers than obnoxious
date/time strings.

Repository revision number is only relevant to the repository, and user
convenience. It has NO impact on any other factor of what you store in
the repository. One repository has one revision number. This isn't
likely to change. EVER. If it did, it would just make the schema
unnecessarily complicated. If you don't like using the same revision
number system for more than one project, either have more than one
repository, or use date/time strings as the way to reference your
project.

Repository revision number bumps aren't nearly useful enough to be an
accurate indication of the real rate of change of a given code base.
There are other more complicated ways to get a much better picture of a
code base's rate of change.

Additionally, distributed replication systems commonly require a global
repository revision number to indicate distinct points in time that
contained a particular state, so the fact that Subversion has such a
concept makes distributed repository replication easier to add on later.

Bill
----
Do you want a dangerous fugitive staying in your flat?
No.
Well, don't upset him and he'll be a nice fugitive staying in your flat.

  

> -----Original Message-----
> From: Anders Hanson [mailto:anders.hanson@speedo.nu]
> Sent: Friday, May 03, 2002 9:08 AM
> To: dev@subversion.tigris.org
> Subject: RE: Multiple projects in one repository!
>
>
> I know that Subversion doesn't care about the directory structure :)
> What I meant was that it whould be nice if it was possible to have a
> separate revision for each project. Right now you have to have one
> repository for each project. Like i wrote in my first mail about this
> when you're building products that are built of multible shared libs
> it's not fun to have one repository for each library.
>
> Application 1 uses library 1, 2 and 3
> Application 2 uses libraray 1, 3 and 4
> Application 3 uses libraray 1
>
> It whould be nice if each library could be a separate "module" in the
> repository, with it's own revision number, that is only bumped when
> checking in that module.
>
> /Anders
>
> -----Original Message-----
> From: sussman@collab.net [mailto:sussman@collab.net]
> Sent: den 3 maj 2002 17:51
> To: Anders Hanson
> Cc: dev@subversion.tigris.org
> Subject: Re: Multiple projects in one repository!
>
>
> "Anders Hanson" <anders.hanson@speedo.nu> writes:
>
> > If it's possible it whould be nice to have a possibility to
> > have multiple project's in one repository, and have on revision
> > number for every project. Mostly to get rid of all the trunk/
> > tags/ and branch/ directories (one for each proj) and instead
> > have something like this
> >
> > repos/trunk/
> > proj1/
> > proj2/
> > proj3
> > repos/tags/
> > proj1/
> > 0.10
> > repos/branches/
> > proj2/
> > 0.1
> >
> > instead of this
> >
> > proj1/trunk/
> > src/
> > include/
> > tags/
> > 0.10
> >
> > proj2/trunk/
> > src/
> > include/
> > branches/
> > 0.1
>
> You can lay your repository out however you want. Subversion doesn't
> care.
>
> Because subversion's own repository has only one project, we chose the

> latter layout. But if you want to put multiple projects in your
> repository, then the former layout makes more sense, certainly.
>
> Subversion doesn't enforce any structure at all. You can lay out your

> directories however you want. Or rearrange them later if you change
> your mind.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org

 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri May 3 18:56:11 2002

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.