Distributed SCM Repositories Justin R. Erenkrantz ICS 280 December 4th, 2002
Subversion “Compelling replacement for CVS” Still has a centralized server model WebDAV is the core transport protocol How can we distribute the repositories? –Geographical dispersion –Offline access
Internal or External Replication Subversion internally uses Berkeley DB –Has primitive notion of replication –Can we use its replication? Another strategy is leverage WebDAV –Intercept calls to the original server –Proxies are well-defined by HTTP –Virtually ignored by WebDAV
Proposed Solution Combination of two approaches Master pushes out database changes –Requires registration of slave servers Slaves handle all operations –Read-only slaves –Handles read on its own –Transparently divert write to master