Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Replication layer #417

Open
yaronyg opened this issue Jan 7, 2016 · 2 comments
Open

Implement Replication layer #417

yaronyg opened this issue Jan 7, 2016 · 2 comments
Labels
Milestone

Comments

@yaronyg
Copy link
Member

@yaronyg yaronyg commented Jan 7, 2016

Depends on #317

@yaronyg yaronyg added 0 - Icebox and removed 0 - Icebox labels Jan 7, 2016
@yaronyg yaronyg added this to the New Infra milestone Jan 11, 2016
@yaronyg yaronyg added 3 - Working and removed 1 - Backlog labels Jan 25, 2016
@yaronyg yaronyg self-assigned this Jan 25, 2016
@yaronyg
Copy link
Member Author

@yaronyg yaronyg commented Jan 25, 2016

thaliSendNotificationBasedOnReplication

  • Look in _Local/<peerID> to find the last sync sequence numbers for the people on our lookup list
  • Set timer to check for changes to the DB
  • Put logic in timer to check if beacons have expired
  • Add in distinction between foreground and background update rates
  • Limit the number of peers we notify
  • Generate Notification beacons

thaliPullReplicationFromNotification

thaliReplicationPeerAction

  • Figure out how to properly handle setting the sequence we have updated to
  • Set logic to send an update based on a change event but rate limited based on the pushLastSyncUpdateMilliseconds value
  • Set our change watcher to make sure we kill a connection once no useful work is happening
  • Set up the actual replication
  • Handle all the events off the replication
  • Figure out how to translate the replication errors into the smaller set of errors that start is
    supposed to return to the peer pool manager
  • Support kill properly
  • Figure out why testThaliReplicationPeerAction doesn't exit at the end
@yaronyg yaronyg added 2 - Ready and removed 3 - Working labels Feb 19, 2016
@yaronyg yaronyg added 3 - Working and removed 2 - Ready labels Feb 26, 2016
@yaronyg yaronyg added 3 - Working and removed 2 - Ready labels Apr 6, 2016
@yaronyg yaronyg added 2 - Ready and removed 3 - Working labels May 4, 2016
@yaronyg yaronyg added 3 - Working and removed 2 - Ready labels May 13, 2016
@yaronyg yaronyg added 2 - Ready and removed 3 - Working labels Jun 7, 2016
@yaronyg yaronyg added 3 - Working and removed 2 - Ready labels Jun 22, 2016
@yaronyg
Copy link
Member Author

@yaronyg yaronyg commented Jun 24, 2016

This work is done. I'm just blocked on pouchdb/pouchdb#5114 which I have a proposed resolution to and pouchdb/express-pouchdb#329 which I can't check in until we get the build system for express-pouchdb back up and running.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant
You can’t perform that action at this time.