22

What is the maximum revision number supported by SVN? The repo is of type FSFS, hosted on a Fedora box.

Thank you,

bahrep
  • 29,961
  • 12
  • 103
  • 150
barfoon
  • 27,481
  • 26
  • 92
  • 138

4 Answers4

28

If you're using a 32-bit computer it's 2147483647, that's 231-1, the maximum value of a signed 32-bit integer. For a 64-bit computer, it's... more. In any case, it should be enough for any practical purpose where humans are doing commits.

In practice, you're probably going to run out of disk space or your directory indexes become too slow before you hit the maximum revision number limit.

Ville Laurikari
  • 28,380
  • 7
  • 60
  • 55
  • 23
    Assuming Jon Skeet isn't doing the commits, that is. – Rich Bradshaw May 03 '09 at 07:42
  • 4
    Ext3 also has a maximum number of 2^31−1 blocks for the whole file system. Since each file takes at least one block and each revision takes one file, you will definitely run into file system limitations before you run out of revisions. (Although in since svn 1.5 you have "sharding" and since svn 1.6 "svnadmin pack" for completed shards...) – Wim Coenen May 03 '09 at 22:09
  • 7
    surely Jon Skeet only commits once, because it's perfect first time around? – ninesided May 04 '09 at 04:18
  • yea, but he's so prolific...always adding new files! – Will Hartung May 07 '09 at 21:27
  • 10
    Jon skeet does not need a version control system – barfoon May 07 '09 at 22:54
11

Possibly more than 2 billion. There is an interesting discussion at http://svn.haxx.se/users/archive-2005-03/0394.shtml

cherouvim
  • 31,725
  • 15
  • 104
  • 153
6

I guess it is large enough not to bother.

Let's suppose it is stored in a 32 bit value. This means that if you commit once a second, you'll need 136 years to get an overflow.

mouviciel
  • 66,855
  • 13
  • 106
  • 140
  • OTOH, there is an urban legend that at Google they overflowed a long once. – Anton Tykhyy May 03 '09 at 08:11
  • 3
    I've overflowed many long's in my live time. What overflow are you referring to? – Luke May 03 '09 at 11:21
  • 3
    Actually, SVN most likely uses a signed integer for the revision number so you have 31 bits left, which will only last you a measly 68 years of commit-once-per-second fun. – Ville Laurikari May 03 '09 at 18:19
0

The time based answers assume that only one person is doing the commits. Here, we have at least a dozen... but they're all working, not posting commits once a second. Then again, it depends on how well you use the tool. You can commit parts of a project at a time, instead of the whole project at once. ... but given the other answers, this point is really moot.