commit | 5285136852801bc0e73e20ce9c46283acebe68df | [log] [tgz] |
---|---|---|
author | Raja Daoud <rdaoud@google.com> | Mon Sep 14 15:50:40 2015 -0700 |
committer | Raja Daoud <rdaoud@google.com> | Mon Sep 14 15:50:40 2015 -0700 |
tree | fd98fb64be85341d1d4e5816982611e9802d1635 | |
parent | 3544ddde20df26ceb3efc1487a2524ae4316ea0c [diff] |
syncbase/vsync: SyncGroup and DAG changes for SG syncing * Change SyncGroup storage to support their versioning and being tracked in DAG and log records. * Update the SyncGroup join & publish calls to support the asynchronous transition from known-but-pending SyncGroup to caught-up after sync. * Add a SyncGroup local state info to track the number of local peer joiners, and the watchability, remote publishing, and sync pending states of the SyncGroup. * Add the retry loop for the SyncGroup publishing to the remote peer. * Improve error checking of SyncGroup prefixes passed in the Spec. * Add a 1st-cut HasKey() store util API to bypass the VOM decode. This will be later further optimized for leveldb to avoid a copy of the value from the C buffer to the Go buffer. * Add DAG support to fully prune all nodes for an object including its current head node. * Remove temporay solution of the responder adding the initiator to the SyncGroup joiner list. * Improve unittest coverage. Change-Id: I4585e248bd9e15b8b9585ec7b1830f8225686b2a
This repository contains a reference implementation of the Vanadium APIs.
Unlike the APIs in https://github.com/vanadium/go.v23, which promises to provide backward compatibility this repository makes no such promises.