Commit Graph

467 Commits

Author SHA1 Message Date
Jeromy
4d5af93f43 vendor in new go-datastore
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2016-01-12 08:22:55 -08:00
Jeromy
51d031c115 return sentinel error for invalid records
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2016-01-12 08:22:55 -08:00
Jeromy
6b1f1ec1ba send record fixes to peers who send outdated records
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2016-01-12 08:22:55 -08:00
rht
743f3edcbb strings.Split -> path.SplitList
License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
2016-01-12 08:22:55 -08:00
Jeromy
18099abb93 if bucket doesnt have enough peers, grab more elsewhere
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2016-01-12 08:22:55 -08:00
Jeromy
c6ee2058d9 comments from CR
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2016-01-12 08:22:55 -08:00
Jeromy
45d4b1a8bc fixup datastore interfaces
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2016-01-12 08:22:55 -08:00
Tommi Virtanen
b76581d6c7 fsrepo: Refactor to extract datastore internals
License: MIT
Signed-off-by: Tommi Virtanen <tv@eagain.net>
2016-01-12 08:22:55 -08:00
Jeromy
70b64ac88c drop error log down to debug
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-11-09 23:18:38 -08:00
Juan Benet
63baf78d1e Merge pull request #1943 from ipfs/dht/speed
fix swarm dial backoff
2015-11-10 06:41:54 +00:00
Jeromy
80c73f26b8 Add in some more notifications to help profile queries
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-11-08 13:09:36 -08:00
Jeromy
94bdce63a7 vendor logging lib update
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-11-05 15:57:21 -08:00
Jeromy
c023d187b5 update code to use new logging changes
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-10-27 11:04:56 -07:00
Juan Batiz-Benet
26cdd9957f fix vendor path.
We need to have a test case that fails when any dep path is not
vendored. (until we use gx fully that is, and vendor everything
with it)

License: MIT
Signed-off-by: Juan Batiz-Benet <juan@benet.ai>
2015-10-04 02:59:25 -04:00
Jeromy
8f0623255d replace imports with absolute path instead of using symlink
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-10-03 14:30:50 -07:00
Jeromy
b34d41e01e fix publish fail on prexisting bad record
dont error out if prexisting record is bad, just grab its sequence number
and continue on with the publish.

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-10-02 14:59:31 -07:00
Jeromy
3b9ad30005 Addressing comments from CR
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-09-30 22:50:50 -07:00
Jeromy
815a031f59 Implement ipns republisher
This commit adds a very basic process that will periodically go through
a list of given ids and republish the values for their ipns entries.

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-09-29 09:47:47 -07:00
Jeromy
235a9ec5fc Fix dht queries
Queries previously would sometimes only query three (alpha value) peers
before halting the operation. This PR changes the number of peers
grabbed from the routing table to start a query to K.

Dht nodes would also not respond with enough peers, as per the kademlia
paper, this has been changed to from 4 to 'K'.

The query mechanism itself also was flawed in that it would pull all the
peers it had yet to query out of the queue and 'start' the query for
them. The concurrency rate limiting was done inside the 'queryPeer'
method after the goroutine was spawned. This did not allow for peers
receiver from query replies to be properly queried in order of distance.

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-09-29 09:47:47 -07:00
Jeromy
cfcc3d6a1b ipns record selection via sequence numbers
This commit adds a sequence number to the IpnsEntry protobuf
that is used to determine which among a set of entries for the same key
is the 'most correct'.

GetValues has been added to the routing interface to retrieve a set of
records from the dht, for the caller to select from.

GetValue (singular) will call GetValues, select the 'best' record, and
then update that record to peers we received outdated records from.
This will help keep the dht consistent.

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-09-29 09:47:41 -07:00
Jeromy
e5a2896c0e extract logging
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-09-14 17:35:50 -07:00
Jeromy
c3280ce885 use new methods from goprocess/context, remove thirdparty/waitable
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-09-08 21:37:40 -07:00
rht
a7202fa94c Fix 'ctx, _' to have explicit cancel
License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
2015-08-23 19:35:03 +07:00
Juan Benet
49dab68bfc Merge pull request #1568 from ipfs/fix/dht-commands
use correct context for dht notifs
2015-08-17 04:38:05 +02:00
Karthik Bala
d140b8aae1 Add router that does nothing for bitswap_wo_routing test
License: MIT
Signed-off-by: Karthik Bala <karthikbala444@gmail.com>
2015-08-16 16:42:08 -07:00
Jeromy
64102a5810 use correct context for dht notifs
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-08-12 16:08:57 -07:00
Jeromy
6564fae65c comment for future @jbenet and @whyrusleeping's to understand reasoning
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-19 16:32:50 -07:00
Jeromy
4780c65171 mark other nodes in routing table on test-connect
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-17 17:49:51 -07:00
Jeromy
a19ad97ea5 make ping its own protocol
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-13 19:19:25 -07:00
Jeromy
9ec3c1aac1 clean up unused dht methods
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-13 15:53:58 -07:00
Juan Batiz-Benet
11937be180 moved util/ctx to github.com/jbenet/go-context
License: MIT
Signed-off-by: Juan Batiz-Benet <juan@benet.ai>
2015-07-10 17:49:46 -07:00
rht
3daf749daa Make sure process context is set last
License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
2015-07-05 09:35:36 +07:00
rht
0ceac5ded9 Use WithContextAndTeardown whenever possible
License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
2015-07-05 09:19:06 +07:00
rht
007a12e7ef Change Process interface into object variable
License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
2015-07-04 22:50:23 +07:00
rht
330b213777 Replace ctxgroup.ContextGroup -> goprocess.Process
License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
2015-07-04 22:50:23 +07:00
rht
4b086eff5a Remove Notice{,f} logging interface
And substitute the lines using Notice{,f} with Info{,f}

License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
2015-06-18 10:03:57 +07:00
rht
78b6cc5f2d Replace Critical{,f} with Error{,f}
Except when there is an explicit os.Exit(1) after the Critical line,
then replace with Fatal{,f}.
golang's log and logrus already call os.Exit(1) by default with Fatal.

License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
2015-06-18 10:03:57 +07:00
Jeromy
40e423d6dc implement an ipfs patch command for modifying merkledag objects
WIP: object creator command

better docs

move patch command into object namespace

dont ignore cancel funcs

addressing comment from CR

add two new subcommands to object patch and clean up main Run func

cancel contexts in early returns

switch to util.Key
2015-06-03 15:24:07 -07:00
Jeromy
abb85fc194 fix rampant memory leak in providers records storage
address comments from CR

use map and array combo for better perf
2015-06-01 17:00:33 -07:00
Jeromy
ef294431d4 move util.Key into its own package under blocks 2015-06-01 16:10:08 -07:00
rht
ac7edddb94 Run 'gofmt -s -w' on these files 2015-05-19 06:11:15 +07:00
Henry
5fff7742f3 godeps: move (go)goprotobuf to github location 2015-04-28 13:42:22 +02:00
Juan Batiz-Benet
140cd1fd1b remove debugerrors
We now consider debugerrors harmful: we've run into cases where
debugerror.Wrap() hid valuable error information (err == io.EOF?).
I've removed them from the main code, but left them in some tests.
Go errors are lacking, but unfortunately, this isn't the solution.

It is possible that debugerros.New or debugerrors.Errorf should
remain still (i.e. only remove debugerrors.Wrap) but we don't use
these errors often enough to keep.
2015-04-20 00:35:35 -07:00
Jeromy
e186e740de move log messages out of warning level 2015-04-13 19:48:55 -07:00
Juan Batiz-Benet
d749930dfb dht-handlers-log-keys 2015-04-02 03:02:23 -07:00
Jeromy
bb1b0d50e0 Address comments from PR 2015-03-31 18:17:58 -07:00
Jeromy
97aeda9ae8 cache public keys and use better method for fetching 2015-03-31 18:17:58 -07:00
Jeromy Johnson
5e3f9f3574 Merge pull request #986 from ipfs/feat/dht-bw-usage
reduce dht bandwidth consumption
2015-03-31 18:15:18 -07:00
Ho-Sheng Hsiao
bf22aeec0a Reorged imports from jbenet/go-ipfs to ipfs/go-ipfs
- Modified Godeps/Godeps.json by hand
- [TEST] Updated welcome docs hash to sharness
- [TEST] Updated contact doc
- [TEST] disabled breaking test (t0080-repo refs local)
2015-03-31 12:52:25 -07:00
Jeromy
a437240989 reduce dht bandwidth consumption
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-03-30 07:54:17 -07:00