Commit Graph

107 Commits

Author SHA1 Message Date
Brian Tiger Chow
ed4a8eb782 chore(tests) add Short() -> SkipNow() to slowest tests
vanilla:
    21.57 real        45.14 user         8.51 sys

short:
    14.40 real        31.13 user         5.56 sys

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-15 02:10:53 -08:00
Brian Tiger Chow
3663eef5ac refctor(bitswap/network) replace Network interface with Dialer interface 2014-11-15 02:10:53 -08:00
Brian Tiger Chow
0b42d77e13 refactor(core, bitswap) split bitswap init into two steps
@jbenet
2014-11-15 02:10:53 -08:00
Brian Tiger Chow
154cf4af75 refactor(bitswap/network) rename -> BitSwapNetwork
remove 'adapter' concept
instead, describe the component as the bitswap network

it's still an adapter, but it's just not necessary to describe it as
such
2014-11-15 02:10:53 -08:00
Brian Tiger Chow
cf1d463885 rename var 2014-11-15 02:10:53 -08:00
Brian Tiger Chow
2bc82adfae style(bitswap) rename Adapter -> BitSwapNetwork for clarity 2014-11-15 02:10:52 -08:00
Brian Tiger Chow
919fb31a16 style(bitswap) rename variable to 'routing' 2014-11-15 02:10:52 -08:00
Jeromy
d4c819e97d log -> logf 2014-11-12 10:39:11 -08:00
Jeromy
be5d01b6a6 more doc comments 2014-11-08 22:44:37 -08:00
Brian Tiger Chow
34561b0da8 docs(exchange) 2014-11-08 21:42:37 -08:00
Juan Batiz-Benet
e5198b1446 bitswap error -> debug (use IPFS_LOGGING=debug) 2014-11-07 14:53:55 -08:00
Brian Tiger Chow
83716af890 fix(bitswap) shut down async 2014-11-05 10:13:24 -08:00
Brian Tiger Chow
40c5cca117 fix(bitswap) always cancel on return 2014-11-05 10:04:20 -08:00
Brian Tiger Chow
a529378ce0 fix(bitswap) don't 'go' local function calls 2014-11-05 10:04:20 -08:00
Brian Tiger Chow
23096de3c4 fix(net) pass contexts to dial peer 2014-11-05 10:04:20 -08:00
Brian Tiger Chow
c60d011764 fix(exchange) add context to DialPeer 2014-11-05 10:04:20 -08:00
Brian Tiger Chow
45b1929342 fix(bitswap_test) race cond
https://github.com/jbenet/go-ipfs/issues/270#issuecomment-61826022
2014-11-05 10:01:22 -08:00
Brian Tiger Chow
49ac059c37 docs: TODO 2014-11-02 20:40:25 -08:00
Jeromy
317ca2f865 benchmark secure channel 2014-11-01 16:07:56 -07:00
Brian Tiger Chow
42dfc50250 docs(bitswap/message) BitSwapMessage interface 2014-10-27 22:43:54 -07:00
Brian Tiger Chow
edf99f5e20 fix(bitswap) preserve ordering in bitswap message 2014-10-27 22:43:54 -07:00
Brian Tiger Chow
91a31a3e7d test(bitswap/message) no duplicates 2014-10-27 21:58:21 -07:00
Brian Tiger Chow
cebeff43b9 style(bitswap/message) rename method -> AddBlock
to emphasize idempotence
2014-10-27 21:58:21 -07:00
Brian Tiger Chow
caedb64697 fix(bitswap/message) impl with map to ensure no duplicate blocks
comes at the cost of O(n) Blocks() method.
2014-10-27 21:58:21 -07:00
Brian Tiger Chow
2c4fefb9d6 style(bitswap/message) rename struct
so there's one less name to think about
2014-10-27 21:58:20 -07:00
Brian Tiger Chow
f94d6a37b6 refactor(bitswap/message) use map to prevent duplicate entries
A nice invariant for bitswap sessions:

        Senders and receivers can trust that messages do not contain
        duplicate blocks or duplicate keys. Backing the message with a
        map enforces this invariant.

        This comes at the cost of O(n) getters.
2014-10-27 21:58:20 -07:00
Brian Tiger Chow
842b910853 style(bitswap/message) rename AppendWanted -> AddWanted
implementation will be patched to ensure bitswap messages cannot contain
duplicate blocks or keys
2014-10-27 21:58:20 -07:00
Brian Tiger Chow
8193049dda fix(bitswap) duplicate key in wantlist
@whyrusleeping noticed this a couple days ago

potential long-term fix: prevent duplicate entries in the wantlist by
using a map/set and iterating over this data structure on export
2014-10-27 21:58:20 -07:00
Jeromy
d92db12460 lots of logging 2014-10-26 00:45:40 +00:00
Jeromy
ab7491f809 logging, logging, and some minor logging 2014-10-25 14:50:22 -07:00
Jeromy
e1f2fe75f8 add in dag removal 2014-10-25 12:39:36 -07:00
Brian Tiger Chow
0dba976070 style(bitswap) import 2014-10-25 04:14:23 -07:00
Brian Tiger Chow
7f40a08b12 fix(bitswap) rm todo 2014-10-25 04:14:17 -07:00
Juan Batiz-Benet
184c25430b go-vet friendly codebase
- distinguish log.Error and log.Errorf functions
- Initialize structs with field names
- A bit of unreachable code (defers)
2014-10-25 03:46:39 -07:00
Brian Tiger Chow
c848202c7d fix(bitswap) move mutex up to strategy from ledger
addresses concurrent access in bitswap session
2014-10-24 16:17:15 -07:00
Brian Tiger Chow
715f5f4a19 fix(blockstore, bitswap) enforce threadsafety in blockstore
fixes data race detected in a testnet test
2014-10-24 16:16:41 -07:00
Brian Tiger Chow
80b573425b refactor(bitswap) mv proto PBMessage -> Message 2014-10-22 21:49:46 -07:00
Brian Tiger Chow
d3ac9ceee3 misc(exch/bitswap) add TODOs 2014-10-22 15:54:18 -07:00
Brian Tiger Chow
8823f46248 fix(exch/bs/pb) rename proto package -> bitswap_message_pb 2014-10-22 15:54:18 -07:00
Brian Tiger Chow
15605fb18f refactor(exchange/bitswap) move proto to internal pb package 2014-10-22 15:54:17 -07:00
Juan Batiz-Benet
f7c1ed39e0 renamed datastore.go -> go-datastore 2014-10-21 15:10:58 -07:00
Juan Batiz-Benet
9ca87fbb93 peer.Peer is now an interface
![](http://m.memegen.com/77n7dk.jpg)
2014-10-20 03:26:46 -07:00
Juan Batiz-Benet
c894b1d295 iiii -> peerToQuery
(that wasn't mine :p)
2014-10-18 04:28:24 -07:00
Juan Batiz-Benet
4b5906e466 logging + tweaks 2014-10-18 04:28:24 -07:00
Juan Batiz-Benet
a5a7d99860 meant to call net.DialPeer 2014-10-18 04:28:24 -07:00
Juan Batiz-Benet
1555ce7c48 bitswap dials peers
Important bugfix. Otherwise bitswap cannot message peers
the node has not connected to yet :(
2014-10-18 04:28:23 -07:00
Juan Batiz-Benet
338b037238 clean up and add inet.Network to bitswap
new Service interface
2014-10-10 20:43:04 -07:00
Juan Batiz-Benet
972c0f7b4b u.DOut -> log.Debug
and other logging switches. I kept the u.PErr and u.POut in cli
commands, as those do need to write raw output directly.
2014-10-09 04:50:22 -07:00
Juan Batiz-Benet
7c5679536c bugfix: use consistent interface
We'll want a `type blocks.Block interface {}` later, but
for now, make sure Blockstore uses ptrs for both Get and Put.

+ fix NewBlock output compile error
2014-10-07 21:32:17 -07:00
Jeromy
6e0cfb3273 removed error from return type of blocks.NewBlock() 2014-10-07 20:46:01 +00:00