[Bps-public-commit] r11609 - in SVN-PropDB: .

jesse at bestpractical.com jesse at bestpractical.com
Mon Apr 7 01:01:43 EDT 2008


Author: jesse
Date: Mon Apr  7 01:01:27 2008
New Revision: 11609

Modified:
   SVN-PropDB/   (props changed)
   SVN-PropDB/lib/Prophet/Replica.pm

Log:
 r29427 at 57:  jesse | 2008-04-06 19:01:03 -1000
 * started to sketch docs for the replica format.


Modified: SVN-PropDB/lib/Prophet/Replica.pm
==============================================================================
--- SVN-PropDB/lib/Prophet/Replica.pm	(original)
+++ SVN-PropDB/lib/Prophet/Replica.pm	Mon Apr  7 01:01:27 2008
@@ -420,15 +420,46 @@
 use Digest::SHA1 qw(sha1 sha1_hex);
 use YAML::Syck;
 
-=head2 export_to
+=head2 export_to { path => $PATH } 
 
+This routine will export a copy of this prophet database replica to a flat file on disk suitable for 
+publishing via HTTP or over a local filesystem for other Prophet replicas to clone or incorporate changes from.
+
+
+Inside the top level directory for the mirror, you'll find a directory named as B<a hex-encoded UUID>.
+This directory is the root of the published replica. The uuid uniquely identifes the database being replicated.
+All replicas of this database will share the same UUID.
+
+Inside the B<<db-uuid>> directory, are a set of files and directories that make up the actual content of the database replica:
+
+=over
+
+=item C<replica-uuid>
+
+=item C<latest-changeset>
+
+=item C<cas>
+
+=item C<records>
+
+=item C<changesets.idx>
+
+=item C<resolutions>
+
+=over 
+
+=item 
+
+
+=back
+
+=back
 
-filesystem replica type
  
  $URL
     /<db-uuid>/
         /replica-uuid
-        /latest
+        /latest
         /cas/<substr(sha1,0,1)>/substr(sha1,1,1)/<sha1>
         /records (optional?)
             /<record type> (for resolution is actually _prophet-resolution-<cas-key>)



More information about the Bps-public-commit mailing list