Commit Graph

122 Commits

Author SHA1 Message Date
Jeromy
f209763357 blockservice.New doesnt need to return an error
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-08-14 16:25:51 -07:00
Jeromy
39a23392c1 use rabin fingerprinting for a chunker
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>

implement rabin fingerprinting as a chunker for ipfs

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>

vendor correctly

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>

refactor chunking interface a little

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>

work chunking interface changes up into importer

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>

move chunker type parsing into its own file in chunk

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-08-08 15:33:10 -07:00
Jeromy
aa7d946716 a little more test coverage on merkledag
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-28 21:42:28 -07:00
Jeromy
b32d0ef153 implement 'editor' abstraction
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-28 15:00:07 -07:00
Jeromy
7c510662ae break merkledag utils into its own package
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-28 15:00:07 -07:00
Jeromy
1c74bc57d7 include hash of resolved object in object stat output
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-21 10:49:45 -07:00
Juan Batiz-Benet
83311212ea Merge pull request #1463 from ipfs/exposepb
expose internal/pb packages.
2015-07-10 11:49:08 -07:00
Juan Batiz-Benet
6e9c72ab37 expose internal/pb packages.
we shouldn't use internal packages.

License: MIT
Signed-off-by: Juan Batiz-Benet <juan@benet.ai>
2015-07-10 11:08:49 -07:00
Jeromy
137c0ac4ac use batching transaction interface from datastore
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
2015-07-09 16:37:30 -07:00
Jeromy
c2b7456b49 fix up some dependencies to avoid circular record deps 2015-06-03 14:27:31 -07:00
Jeromy
ef294431d4 move util.Key into its own package under blocks 2015-06-01 16:10:08 -07:00
Juan Batiz-Benet
5d43ebb916 Merge pull request #1274 from ipfs/refactor/importer
change pinning to happen in a callback
2015-05-29 17:06:11 -07:00
Jeromy
dd928a2b1d change pinning to happen in a callback 2015-05-28 08:52:20 -07:00
rht
3547f7ae33 Replace 'var * bytes.Buffer' with '\1 := new(bytes.Buffer)' 2015-05-26 23:18:04 +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
Jeromy
0a6b880bee fix for #1008 and other pinning fixes
This commit adds a new set of sharness tests for pinning, and addresses
bugs that were pointed out by said tests.

test/sharness: added more pinning tests

Pinning is currently broken. See issue #1051. This commit introduces
a few more pinning tests. These are by no means exhaustive, but
definitely surface the present problems going on. I believe these
tests are correct, but not sure. Pushing them as failing so that
pinning is fixed in this PR.

make pinning and merkledag.Get take contexts

improve 'add' commands usage of pinning

FIXUP: fix 'pin lists look good'

ipfs-pin-stat simple script to help check pinning

This is a simple shell script to help check pinning.

We ought to strive towards making adding commands this easy.
The http api is great and powerful, but our setup right now
gets in the way. Perhaps we can clean up that area.

updated t0081-repo-pinning

- fixed a couple bugs with the tests
- made it a bit clearer (still a lot going on)
- the remaining tests are correct and highlight a problem with
  pinning. Namely, that recursive pinning is buggy. At least:
  towards the end of the test, $HASH_DIR4 and $HASH_FILE4 should
  be pinned indirectly, but they're not. And thus get gc-ed out.
  There may be other problems too.

cc @whyrusleeping

fix grep params for context deadline check

fix bugs in pin and pin tests

check for block local before checking recursive pin
2015-04-19 23:40:25 -07:00
Kristoffer Ström
20383472c7 Add additional link manipulation functions
// AddRawLink adds a link to this node
AddRawLink(name string, lnk *Link) error

// Return a copy of the link with given name
GetNodeLink(name string) (*Link, error)
2015-04-15 17:22:52 +02: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
13c489eca1 fix context respect through fuse reading 2015-03-24 12:23:01 -07:00
Jeromy
d8bc95f43e invalidate merkledag cache when modifying children 2015-03-24 12:23:01 -07:00
Juan Batiz-Benet
1d5b903611 added cancel func calls previously ignored 2015-03-07 09:31:46 -08:00
Jeromy
9a41f76abc more understandable errors from merkledag decoding 2015-02-26 18:43:27 -08:00
Juan Batiz-Benet
88dea5771d Merge pull request #819 from jbenet/x_net_context_leeroy
update context imports to golang.org/x/net
2015-02-25 03:17:28 -08:00
Henry
92d08db7a5 rewrote import paths of go.net/context to use golang.org/x/context
- updated go-ctxgroup and goprocess
ctxgroup: AddChildGroup was changed to AddChild. Used in two files:
- p2p/net/mock/mock_net.go
- routing/dht/dht.go

- updated context from hg repo to git
prev. commit in hg was ad01a6fcc8a19d3a4478c836895ffe883bd2ceab. (context: make parentCancelCtx iterative)
represents commit 84f8955a887232b6308d79c68b8db44f64df455c in git repo

- updated context to master (b6fdb7d8a4ccefede406f8fe0f017fb58265054c)

Aaron Jacobs (2):
net/context: Don't accept a context in the DoSomethingSlow example.
context: Be clear that users must cancel the result of WithCancel.

Andrew Gerrand (1):
go.net: use golang.org/x/... import paths

Bryan C. Mills (1):
net/context: Don't leak goroutines in Done example.

Damien Neil (1):
context: fix removal of cancelled timer contexts from parent

David Symonds (2):
context: Fix WithValue example code.
net: add import comments.

Sameer Ajmani (1):
context: fix TestAllocs to account for ints in interfaces
2015-02-25 11:58:19 +01:00
Jeromy
1e1d70b28a fix panic in offline calls of 'ipfs object stat' 2015-02-24 12:32:10 -08:00
Jeromy
b04b23e675 hotfix: duplicate blocks werent being counted properly, deduped key list before requesting 2015-02-19 08:42:28 +00:00
Jeromy
a29c0fc751 move blocking calls out of single threaded loops, cancel contexts ASAP 2015-02-19 06:04:39 +00:00
Jeromy
bc79ae17a1 refactor importer package with trickle and balanced dag generation 2015-02-04 21:59:51 +00:00
Juan Batiz-Benet
58f39687cf logs: removed all log.Errors unhelpful to users
Let's save log.Error for things the user can take action on.
Moved all our diagnostics to log.Debug. We can ideally reduce them
even further.
2015-02-03 01:06:07 -08:00
Mildred Ki'Lya
d221d55d85 HTTP: add handlers to allow object creation and modification 2015-01-31 20:47:34 +01:00
Jeromy
e959626029 comment NodeGetter 2015-01-27 03:29:10 +00:00
Jeromy
ba4ea139b9 address concerns from PR 2015-01-27 01:33:09 +00:00
Jeromy
0023cb3097 refactor and clean up dagreader 2015-01-27 01:33:09 +00:00
Jeromy
26826bd55e implement seeking in the dagreader 2015-01-27 01:33:09 +00:00
Juan Batiz-Benet
16690d4af2 race fix: pinner loads with a threadsafe datastore
All the datastores used by pinners and so on should be mutex
wrapped. One issue with changing all of them from
ds.Datastore -> ds.ThreadSafeDatastore is that we wrap the
incoming ds.ThreadSafeDatastore with other datastores, which
do not implement the interface. Re-wrapping again causes
double locking. (which may be ok..., but...) any ideas?
2015-01-14 16:15:38 -08:00
Juan Batiz-Benet
bcce9ef088 merkledag traversal 2015-01-07 11:04:35 -08:00
Juan Batiz-Benet
6b2795338f ipfs object has learned stat
'ipfs object stat' is a plumbing command to print DAG
node statistics. <key> is a base58 encoded multihash.
It outputs to stdout:

  NumLinks        int number of links in link table
  BlockSize       int size of the raw, encoded data
  LinksSize       int size of the links segment
  DataSize        int size of the data segment
  CumulativeSize  int cumulative size of object and references
2015-01-07 02:31:29 -08:00
Juan Batiz-Benet
f63d45ca56 merkledag: split off node.go 2015-01-07 02:15:53 -08:00
Juan Batiz-Benet
13e79a05e5 merkledag: add NodeStat object 2015-01-07 02:13:44 -08:00
Juan Batiz-Benet
cd65ec614b merkledag: keep links sorted by name
May not be necessary to sort when adding each link--
doing so would be unnecessarily expensive O(n^2) when
constructing nodes -- though n wont be big.
2015-01-06 13:12:22 -08:00
Jeromy
e3cf893616 implement recursive indirect blocks
improve efficiency of multilayered indirect blocks

clean up tests

panic cleanup

clean up logic, improve readability

add final root node to the dagservice upon creation

importer: simplified dag generation

test: updated hashes using latest code

@whyrusleeping this is why the sharness tests
were failing: the hashes are added manually to
make sure our generation doesn't change.

cleanup after CR

fix merkledag tests

fix small block generation (no subblocks!)
2015-01-06 19:43:56 +00:00
Juan Batiz-Benet
bb8886f3af merkledag: LONG timeout on Get
we shouldn't use an arbitrary timeout here. since Get
doesnt take in a context yet, we give a large upper bound.
think of an http request. we want it to go on as long as
the client requests it.
2015-01-05 00:16:53 -08:00
Brian Tiger Chow
14990bb556 fix(merkledag/test) panic!
https://travis-ci.org/jbenet/go-ipfs/jobs/45000756

cc @whyrusleeping @jbenet

lol this is starting to happen pretty often
2014-12-24 09:31:18 -05:00
Brian Tiger Chow
b19a931d2f remote low SnR debug statement
cc @jbenet @whyrusleeping

License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-23 08:56:07 -08:00
Jeromy
2240272d85 change Provide RPC to not wait for an ACK, improves performance of 'Add' operations 2014-12-17 23:44:41 -08:00
Jeromy
7b0a68031d cleanup from CR 2014-12-15 05:35:53 +00:00
Jeromy
d54c6eb46b fix FindLinks comment 2014-12-15 05:35:53 +00:00
Jeromy
70283151f2 some cleanup, use WaitGroup over channel ugliness 2014-12-15 05:35:53 +00:00
Jeromy
5b0be85b6b change FindLink to FindLinks
cc @maybebtc
2014-12-15 05:35:52 +00:00