44 Commits

Author SHA1 Message Date
Adin Schmahmann
91cdb88828 Switched from gx to go mod and started using go-libp2p-core interfaces 2019-05-28 14:41:28 -04:00
vyzo
2843bd30d1 update tests 2019-01-18 15:53:16 +02:00
vyzo
f2ee9b3d44 expose counter in register interface 2019-01-18 15:46:02 +02:00
vyzo
3c726d2ea9 update gx deps 2019-01-18 15:32:04 +02:00
vyzo
8846a4b090 include ttl in registration response 2019-01-18 15:31:50 +02:00
vyzo
1ee2b55a9f update protobuf 2019-01-18 15:22:49 +02:00
vyzo
c540724f1f two interfaces for client-side: RendezvousPoint and RendezvousClient
RendezvousClient soon to be stateful.
2018-04-28 12:05:21 +03:00
vyzo
baf1e4e618 don't leak database error details in internal errors 2018-04-26 14:30:47 +03:00
vyzo
c487c2077b refactor database interface and implementation into db subpackage
We now have:
- db/dbi.go -- interface, no dependency on any particular database
- db/sqlite/... -- sqlite implementation, depends on dbi
- the rendezvous.NewRendezvousService API has been redefined to NewRendezvouServiceWithDB
  service importer constructs the database of choice
- the rendezvous package has no dependences on db implementation, so clients can import
  without linking SQLite in the binary
2018-04-26 14:06:58 +03:00
vyzo
aa7f9daaa8 client: add TODO for robust discovery error recovery 2018-04-25 11:06:08 +03:00
vyzo
e530204107 use randomized exponential backoff in error retry for persistent client registrations 2018-04-24 21:26:06 +03:00
vyzo
6c4fda5295 test client specific functionality 2018-04-24 18:43:43 +03:00
vyzo
9ab12abbde make db nonce 32 bytes 2018-04-24 18:23:10 +03:00
vyzo
2b0995f842 test service errors 2018-04-24 18:16:44 +03:00
vyzo
a47367d67a basic service test 2018-04-24 17:11:03 +03:00
vyzo
4788ef758e test db functionality with multiple namespaces 2018-04-24 15:53:22 +03:00
vyzo
cfbcddee41 up MaxRegistrations to 1k 2018-04-24 14:10:50 +03:00
vyzo
f41fbba29a test db functionality 2018-04-24 14:08:17 +03:00
vyzo
53dfbc7ae1 test address and cookie packing 2018-04-24 12:34:39 +03:00
vyzo
8c1227209a better logging for service i/o 2018-04-24 12:00:53 +03:00
vyzo
ae10cc6b9f implement binary packing details 2018-04-24 12:00:37 +03:00
vyzo
c703d37aa2 database logic implementation 2018-04-23 22:28:16 +03:00
vyzo
aa3f46c897 user parameter for ttl in Register 2018-04-23 14:50:46 +03:00
vyzo
4e3eaa7ba0 refactor service constructor into two parts 2018-04-23 14:44:14 +03:00
vyzo
fbaf21c098 client: add TODO comment for adaptive backoff 2018-04-23 13:38:34 +03:00
vyzo
8181424229 client: use larger batch in discovery, only poll immediately if full 2018-04-23 13:34:16 +03:00
vyzo
6c1d28214b Registration records should have an actual peer ID 2018-04-23 13:25:18 +03:00
vyzo
dbe6b0ddb5 rendezvous service sync: hook for federation 2018-04-23 12:05:18 +03:00
vyzo
7d72fc79b3 service implementation 2018-04-23 11:54:25 +03:00
vyzo
e5a72b9bea rendezvous interface should expose full registration information
- instead of returning PeerInfos, return Registration objects in discovery
- provide utility functions at module level for peer info discovery
2018-04-21 18:51:18 +03:00
vyzo
aeac2e2a0f update for response error changes in the protocol 2018-04-21 12:06:27 +03:00
vyzo
b7c304ddf3 update protobuf 2018-04-21 12:05:36 +03:00
vyzo
6a1176f844 annotate registration error 2018-04-20 19:20:04 +03:00
vyzo
7e5664ce7c use discriminated registration errors 2018-04-20 14:38:12 +03:00
vyzo
1506c04f1a simplify Rendezvous interface 2018-04-20 13:07:01 +03:00
vyzo
e3d343f34a include namespace in error logs 2018-04-20 12:01:35 +03:00
vyzo
13f4c67879 add E_INVALID_TTL to rendezvous.proto 2018-04-20 10:43:36 +03:00
vyzo
a107e34a06 interface ergonomics 2018-04-19 22:46:13 +03:00
vyzo
b7bc940aed add error notification for background register/discover 2018-04-19 22:34:46 +03:00
vyzo
268abf3357 more fine-grained rendezvous api 2018-04-19 22:29:52 +03:00
vyzo
f94b0b48b3 update client interface
It's DiscoverOnce and Discover instead of Discover and DiscoverAsync
2018-04-19 20:37:48 +03:00
vyzo
0cbcbf6e24 client implementation 2018-04-19 20:18:42 +03:00
vyzo
f946163e88 rendezvous protobuf 2018-04-18 18:30:45 +03:00
vyzo
b7dd840ce4
Initial commit 2018-04-18 18:18:04 +03:00