You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2013/12/02 11:59:07 UTC
svn commit: r1546956 -
/subversion/branches/fsfs-improvements/subversion/libsvn_fs_fs/structure
Author: julianfoad
Date: Mon Dec 2 10:59:07 2013
New Revision: 1546956
URL: http://svn.apache.org/r1546956
Log:
* subversion/libsvn_fs_fs/structure: Tweak for readability and grammar.
Modified:
subversion/branches/fsfs-improvements/subversion/libsvn_fs_fs/structure
Modified: subversion/branches/fsfs-improvements/subversion/libsvn_fs_fs/structure
URL: http://svn.apache.org/viewvc/subversion/branches/fsfs-improvements/subversion/libsvn_fs_fs/structure?rev=1546956&r1=1546955&r2=1546956&view=diff
==============================================================================
--- subversion/branches/fsfs-improvements/subversion/libsvn_fs_fs/structure (original)
+++ subversion/branches/fsfs-improvements/subversion/libsvn_fs_fs/structure Mon Dec 2 10:59:07 2013
@@ -238,14 +238,14 @@ The supported modes, and the parameters
"physical"
All existing and future revision files will use the traditional
physical addressing scheme. All references are given as rev/offset
- pairs with "offset" being the file position offset relative to the
- begin of the revision in the respective rev or pack file.
+ pairs with "offset" being the byte offset relative to the beginning of
+ the revision in the respective rev or pack file.
"logical <first-revision-to-use-it>"
'first-revision-to-use-it' specifies the first revision to use logical
- addressing, must coincide the begin of a shard and may be a future
- revision. All earlier revisions use physical addressing. It illegal
- to use logical addressing on non-shared repositories.
+ addressing, must coincide with the beginning of a shard and may be a
+ future revision. All earlier revisions use physical addressing. It is
+ illegal to use logical addressing on non-sharded repositories.
Addressing modes
@@ -257,9 +257,9 @@ interpretation to it. Older formats onl
All items are addressed using <rev> <item_index> pairs. In physical
addressing mode, item_index is the (ASCII decimal) number of bytes from
-the start of the revision file to the start respective item. For non-
-packed files that is also the absolute file offset. Revision pack files
-are simply concatenate multiple rev files, i.e. the absolute file offset
+the start of the revision file to the start of the respective item. For
+non-packed files that is also the absolute file offset. Revision pack
+files simply concatenate multiple rev files, i.e. the absolute file offset
is determined as
absolute offset = rev offset taken from manifest + item_index
@@ -301,11 +301,11 @@ Packing revisions
A filesystem can optionally be "packed" to conserve space on disk. The
packing process concatenates all the revision files in each full shard to
-create pack files. A manifest file is also created for each shard which
-records the indexes of the corresponding revision files in the pack file.
-In addition, the original shard is removed, and reads are redirected to the
-pack file.
+create a pack file. The original shard is removed, and reads are
+redirected to the pack file.
+With physical addressing, a manifest file is created for each shard which
+records the indexes of the corresponding revision files in the pack file.
The manifest file consists of a list of offsets, one for each revision in
the pack file. The offsets are stored as ASCII decimal, and separated by
a newline character.
@@ -614,6 +614,8 @@ In FS formats 1 and 2, it also contains:
rev Prototype rev file with new text reps
rev-lock Lockfile for writing to the above
+(In newer formats, these files are in the txn-protorevs/ directory.)
+
In format 7+ logical addressing mode, it contains two additional index
files (see structure-indexes for a detailed description) and one more
counter file:
@@ -622,8 +624,6 @@ counter file:
index.l2p Log-to-phys proto-index
index.p2l Phys-to-log proto-index
-In newer formats, these files are in the txn-protorevs/ directory.
-
The prototype rev file is used to store the text representations as
they are received from the client. To ensure that only one client is
writing to the file at a given time, the "rev-lock" file is locked for