encode keys to datastore with base32 standard encoding
Fixes #2601 Also bump version to 0.4.3-dev License: MIT Signed-off-by: Jeromy <why@ipfs.io>
Jeromy committed
Jun 22, 2016 at 14:28 UTC
0782c4dc030a30f9145f7cf7078ec16d05c744fb
56 files changed
+121
-144
Godeps/_workspace/src/bazil.org/fuse/syscallx/syscallx_std.go
+1
-1
@@ -6,7 +6,7 @@ package syscallx
6
// the right stuff in golang.org/x/sys/unix.
7
8
import (
9
- "gx/ipfs/QmTsTrxKNXu8sZLv7FP6p884CHoDbT9upKA1j4FkCy5V7T/sys/unix"
9
+ "gx/ipfs/QmXPKMT5cT8ajqamSD1YaeEpfeaHvs9AU4MQzte4Bkr6V4/sys/unix"
10
)
11
12
func Getxattr(path string, attr string, dest []byte) (sz int, err error) {
blocks/blockstore/blockstore.go
+14
-9
@@ -11,10 +11,10 @@ import (
11
key "github.com/ipfs/go-ipfs/blocks/key"
12
logging "gx/ipfs/QmNQynaz7qfriSUJkiEZUrm2Wen1u3Kj9goZzWtrPyu7XR/go-log"
13
mh "gx/ipfs/QmYf7ng2hG5XBtJA3tN34DQ2GUN5HNksEw1rLDkmr6vGku/go-multihash"
14
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
15
- dsns "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/namespace"
16
- dsq "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/query"
14
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
15
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
16
+ dsns "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/namespace"
17
+ dsq "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/query"
18
)
19
20
var log = logging.Logger("blockstore")
@@ -164,26 +164,31 @@ func (bs *blockstore) AllKeysChan(ctx context.Context) (<-chan key.Key, error) {
164
}
165
166
// this function is here to compartmentalize
167
- get := func() (k key.Key, ok bool) {
167
+ get := func() (key.Key, bool) {
168
select {
169
case <-ctx.Done():
170
- return k, false
170
+ return "", false
171
case e, more := <-res.Next():
172
if !more {
173
- return k, false
173
+ return "", false
174
}
175
if e.Error != nil {
176
log.Debug("blockstore.AllKeysChan got err:", e.Error)
177
- return k, false
177
+ return "", false
178
}
179
180
// need to convert to key.Key using key.KeyFromDsKey.
181
- k = key.KeyFromDsKey(ds.NewKey(e.Key))
181
+ k, err := key.KeyFromDsKey(ds.NewKey(e.Key))
182
+ if err != nil {
183
+ log.Warningf("error parsing key from DsKey: ", err)
184
+ return "", true
185
+ }
186
log.Debug("blockstore: query got key", k)
187
188
// key must be a multihash. else ignore it.
185
- _, err := mh.Cast([]byte(k))
189
+ _, err = mh.Cast([]byte(k))
190
if err != nil {
191
+ log.Warningf("key from datastore was not a multihash: ", err)
192
return "", true
193
}
194
blocks/blockstore/blockstore_test.go
+3
-3
@@ -5,10 +5,10 @@ import (
5
"fmt"
6
"testing"
7
8
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
9
- dsq "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/query"
10
- ds_sync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
8
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
9
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
10
+ dsq "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/query"
11
+ ds_sync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
12
13
blocks "github.com/ipfs/go-ipfs/blocks"
14
key "github.com/ipfs/go-ipfs/blocks/key"
blocks/blockstore/write_cache_test.go
+3
-3
@@ -4,9 +4,9 @@ import (
4
"testing"
5
6
"github.com/ipfs/go-ipfs/blocks"
7
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
8
- dsq "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/query"
9
- syncds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
7
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
8
+ dsq "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/query"
9
+ syncds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
10
)
11
12
func TestReturnsErrorWhenSizeNegative(t *testing.T) {
blocks/key/key.go
+8
-30
@@ -6,7 +6,8 @@ import (
6
7
b58 "gx/ipfs/QmT8rehPR3F6bmwL6zjUN8XpiDBFFpMP2myPdC6ApsWfJf/go-base58"
8
mh "gx/ipfs/QmYf7ng2hG5XBtJA3tN34DQ2GUN5HNksEw1rLDkmr6vGku/go-multihash"
9
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
9
+ base32 "gx/ipfs/Qmb1DA2A9LS2wR4FFweB4uEDomFsdmnw1VLawLE1yQzudj/base32"
10
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
11
)
12
13
// Key is a string representation of multihash for use with maps.
@@ -38,7 +39,7 @@ func B58KeyEncode(k Key) string {
39
40
// DsKey returns a Datastore key
41
func (k Key) DsKey() ds.Key {
41
- return ds.NewKey(string(k))
42
+ return ds.NewKey(base32.RawStdEncoding.EncodeToString([]byte(k)))
43
}
44
45
// UnmarshalJSON returns a JSON-encoded Key (string)
@@ -68,36 +69,13 @@ func (k *Key) Loggable() map[string]interface{} {
69
}
70
71
// KeyFromDsKey returns a Datastore key
71
-func KeyFromDsKey(dsk ds.Key) Key {
72
- return Key(dsk.String()[1:])
73
-}
74
-
75
-// B58KeyConverter -- for KeyTransform datastores
76
-// (static as only one obj needed)
77
-var B58KeyConverter = b58KeyConverter{}
78
-
79
-type b58KeyConverter struct{}
80
-
81
-// ConvertKey returns a B58 encoded Datastore key
82
-// TODO: this is hacky because it encodes every path component. some
83
-// path components may be proper strings already...
84
-func (b58KeyConverter) ConvertKey(dsk ds.Key) ds.Key {
85
- k := ds.NewKey("/")
86
- for _, n := range dsk.Namespaces() {
87
- k = k.ChildString(b58.Encode([]byte(n)))
72
+func KeyFromDsKey(dsk ds.Key) (Key, error) {
73
+ dec, err := base32.RawStdEncoding.DecodeString(dsk.String()[1:])
74
+ if err != nil {
75
+ return "", err
76
}
89
- return k
90
-}
77
92
-// InvertKey returns a b58 decoded Datastore key
93
-// TODO: this is hacky because it encodes every path component. some
94
-// path components may be proper strings already...
95
-func (b58KeyConverter) InvertKey(dsk ds.Key) ds.Key {
96
- k := ds.NewKey("/")
97
- for _, n := range dsk.Namespaces() {
98
- k = k.ChildString(string(b58.Decode(n)))
99
- }
100
- return k
78
+ return Key(dec), nil
79
}
80
81
// KeySlice is used for sorting Keys
blockservice/test/blocks_test.go
+2
-2
@@ -11,10 +11,10 @@ import (
11
key "github.com/ipfs/go-ipfs/blocks/key"
12
. "github.com/ipfs/go-ipfs/blockservice"
13
offline "github.com/ipfs/go-ipfs/exchange/offline"
14
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
15
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
14
u "gx/ipfs/QmZNVWh8LLjAavuQ2JXuFmuYH3C11xo988vSgp7UQrTRj1/go-ipfs-util"
15
"gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
16
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
17
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
18
)
19
20
func TestBlocks(t *testing.T) {
core/builder.go
+2
-2
@@ -14,8 +14,8 @@ import (
14
pin "github.com/ipfs/go-ipfs/pin"
15
repo "github.com/ipfs/go-ipfs/repo"
16
cfg "github.com/ipfs/go-ipfs/repo/config"
17
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
18
- dsync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
17
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
18
+ dsync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
19
20
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
21
goprocessctx "gx/ipfs/QmQopLATEYMNg7dVqZRNDfeE2S1yKy8zrRh5xnYiuqeZBn/goprocess/context"
core/core.go
+1
-1
@@ -25,7 +25,6 @@ import (
25
b58 "gx/ipfs/QmT8rehPR3F6bmwL6zjUN8XpiDBFFpMP2myPdC6ApsWfJf/go-base58"
26
ic "gx/ipfs/QmUWER4r4qMvaCnX5zREcfyiWN7cXN9g3a7fkRqNz8qWPP/go-libp2p-crypto"
27
ma "gx/ipfs/QmYzDkkgAEmrcNzFCiYo6L1dTX4EAG1gZkbtdbd9trL4vd/go-multiaddr"
28
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
28
discovery "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/discovery"
29
p2phost "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/host"
30
p2pbhost "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/host/basic"
@@ -35,6 +34,7 @@ import (
34
addrutil "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/net/swarm/addr"
35
ping "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/protocol/ping"
36
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
37
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
38
39
routing "github.com/ipfs/go-ipfs/routing"
40
dht "github.com/ipfs/go-ipfs/routing/dht"
core/corerouting/core.go
+1
-1
@@ -9,9 +9,9 @@ import (
9
supernode "github.com/ipfs/go-ipfs/routing/supernode"
10
gcproxy "github.com/ipfs/go-ipfs/routing/supernode/proxy"
11
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
12
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
12
"gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/host"
13
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
14
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
15
)
16
17
// NB: DHT option is included in the core to avoid 1) because it's a sane
core/coreunix/add.go
+2
-2
@@ -15,9 +15,9 @@ import (
15
"github.com/ipfs/go-ipfs/importer/chunk"
16
mfs "github.com/ipfs/go-ipfs/mfs"
17
"github.com/ipfs/go-ipfs/pin"
18
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
19
- syncds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
18
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
19
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
20
+ syncds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
21
22
bs "github.com/ipfs/go-ipfs/blocks/blockstore"
23
"github.com/ipfs/go-ipfs/commands/files"
core/coreunix/metadata_test.go
+2
-2
@@ -5,9 +5,9 @@ import (
5
"io/ioutil"
6
"testing"
7
8
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
9
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
8
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
9
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
10
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
11
12
bstore "github.com/ipfs/go-ipfs/blocks/blockstore"
13
key "github.com/ipfs/go-ipfs/blocks/key"
core/mock/mock.go
+2
-2
@@ -3,9 +3,9 @@ package coremock
3
import (
4
"net"
5
6
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
7
- syncds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
6
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
7
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
8
+ syncds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
9
10
commands "github.com/ipfs/go-ipfs/commands"
11
core "github.com/ipfs/go-ipfs/core"
exchange/bitswap/decision/engine_test.go
+2
-2
@@ -13,9 +13,9 @@ import (
13
message "github.com/ipfs/go-ipfs/exchange/bitswap/message"
14
testutil "github.com/ipfs/go-ipfs/thirdparty/testutil"
15
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
16
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
17
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
16
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
17
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
18
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
19
)
20
21
type peerAndEngine struct {
exchange/bitswap/testnet/peernet.go
+1
-1
@@ -5,9 +5,9 @@ import (
5
mockrouting "github.com/ipfs/go-ipfs/routing/mock"
6
testutil "github.com/ipfs/go-ipfs/thirdparty/testutil"
7
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
8
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
8
mockpeernet "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/net/mock"
9
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
10
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
11
)
12
13
type peernet struct {
exchange/bitswap/testutils.go
+2
-2
@@ -9,10 +9,10 @@ import (
9
delay "github.com/ipfs/go-ipfs/thirdparty/delay"
10
testutil "github.com/ipfs/go-ipfs/thirdparty/testutil"
11
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
12
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
13
- ds_sync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
12
p2ptestutil "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/test/util"
13
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
14
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
15
+ ds_sync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
16
)
17
18
// WARNING: this uses RandTestBogusIdentity DO NOT USE for NON TESTS!
exchange/offline/offline_test.go
+2
-2
@@ -7,9 +7,9 @@ import (
7
"github.com/ipfs/go-ipfs/blocks/blockstore"
8
"github.com/ipfs/go-ipfs/blocks/blocksutil"
9
key "github.com/ipfs/go-ipfs/blocks/key"
10
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
11
- ds_sync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
10
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
11
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
+ ds_sync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
13
)
14
15
func TestBlockReturnsErr(t *testing.T) {
exchange/reprovide/reprovide_test.go
+2
-2
@@ -7,9 +7,9 @@ import (
7
blockstore "github.com/ipfs/go-ipfs/blocks/blockstore"
8
mock "github.com/ipfs/go-ipfs/routing/mock"
9
testutil "github.com/ipfs/go-ipfs/thirdparty/testutil"
10
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
11
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
10
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
11
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
13
14
. "github.com/ipfs/go-ipfs/exchange/reprovide"
15
)
merkledag/merkledag_test.go
+2
-2
@@ -21,10 +21,10 @@ import (
21
dstest "github.com/ipfs/go-ipfs/merkledag/test"
22
"github.com/ipfs/go-ipfs/pin"
23
uio "github.com/ipfs/go-ipfs/unixfs/io"
24
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
25
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
24
u "gx/ipfs/QmZNVWh8LLjAavuQ2JXuFmuYH3C11xo988vSgp7UQrTRj1/go-ipfs-util"
25
"gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
26
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
27
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
28
)
29
30
type dagservAndPinner struct {
merkledag/test/utils.go
+2
-2
@@ -5,8 +5,8 @@ import (
5
bsrv "github.com/ipfs/go-ipfs/blockservice"
6
"github.com/ipfs/go-ipfs/exchange/offline"
7
dag "github.com/ipfs/go-ipfs/merkledag"
8
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
9
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
8
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
9
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
10
)
11
12
func Mock() dag.DAGService {
merkledag/utils/utils.go
+2
-2
@@ -3,9 +3,9 @@ package dagutils
3
import (
4
"errors"
5
6
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
7
- syncds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
6
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
7
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
8
+ syncds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
9
10
bstore "github.com/ipfs/go-ipfs/blocks/blockstore"
11
bserv "github.com/ipfs/go-ipfs/blockservice"
mfs/mfs_test.go
+2
-2
@@ -15,9 +15,9 @@ import (
15
16
"github.com/ipfs/go-ipfs/path"
17
randbo "gx/ipfs/QmYvsG72GsfLgUeSojXArjnU6L4Wmwk7wuAxtNLuyXcc1T/randbo"
18
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
19
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
18
"gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
19
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
20
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
21
22
bstore "github.com/ipfs/go-ipfs/blocks/blockstore"
23
key "github.com/ipfs/go-ipfs/blocks/key"
namesys/namesys.go
+1
-1
@@ -7,8 +7,8 @@ import (
7
path "github.com/ipfs/go-ipfs/path"
8
routing "github.com/ipfs/go-ipfs/routing"
9
ci "gx/ipfs/QmUWER4r4qMvaCnX5zREcfyiWN7cXN9g3a7fkRqNz8qWPP/go-libp2p-crypto"
10
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
10
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
11
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
)
13
14
// mpns (a multi-protocol NameSystem) implements generic IPFS naming.
namesys/publisher.go
+1
-1
@@ -7,8 +7,8 @@ import (
7
"time"
8
9
proto "gx/ipfs/QmZ4Qi3GaRbjcx28Sme5eMH7RQjGkt8wHxt2a65oLaeFEV/gogo-protobuf/proto"
10
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
10
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
11
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
13
key "github.com/ipfs/go-ipfs/blocks/key"
14
dag "github.com/ipfs/go-ipfs/merkledag"
namesys/republisher/repub.go
+1
-1
@@ -18,8 +18,8 @@ import (
18
gpctx "gx/ipfs/QmQopLATEYMNg7dVqZRNDfeE2S1yKy8zrRh5xnYiuqeZBn/goprocess/context"
19
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
20
proto "gx/ipfs/QmZ4Qi3GaRbjcx28Sme5eMH7RQjGkt8wHxt2a65oLaeFEV/gogo-protobuf/proto"
21
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
21
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
22
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
23
)
24
25
var errNoEntry = errors.New("no previous entry")
namesys/resolve_test.go
+2
-2
@@ -10,10 +10,10 @@ import (
10
mockrouting "github.com/ipfs/go-ipfs/routing/mock"
11
testutil "github.com/ipfs/go-ipfs/thirdparty/testutil"
12
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
13
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
14
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
13
u "gx/ipfs/QmZNVWh8LLjAavuQ2JXuFmuYH3C11xo988vSgp7UQrTRj1/go-ipfs-util"
14
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
15
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
16
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
17
)
18
19
func TestRoutingResolve(t *testing.T) {
package.json
+2
-2
@@ -144,9 +144,9 @@
144
},
145
{
146
"author": "jbenet",
147
- "hash": "QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN",
147
+ "hash": "QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs",
148
"name": "go-datastore",
149
- "version": "0.0.1"
149
+ "version": "0.1.1"
150
},
151
{
152
"author": "codahale",
pin/pin.go
+1
-1
@@ -11,8 +11,8 @@ import (
11
"github.com/ipfs/go-ipfs/blocks/set"
12
mdag "github.com/ipfs/go-ipfs/merkledag"
13
logging "gx/ipfs/QmNQynaz7qfriSUJkiEZUrm2Wen1u3Kj9goZzWtrPyu7XR/go-log"
14
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
14
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
15
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
16
)
17
18
var log = logging.Logger("pin")
pin/pin_test.go
+2
-2
@@ -11,9 +11,9 @@ import (
11
bs "github.com/ipfs/go-ipfs/blockservice"
12
"github.com/ipfs/go-ipfs/exchange/offline"
13
mdag "github.com/ipfs/go-ipfs/merkledag"
14
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
15
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
14
"gx/ipfs/QmZNVWh8LLjAavuQ2JXuFmuYH3C11xo988vSgp7UQrTRj1/go-ipfs-util"
15
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
16
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
17
)
18
19
func randNode() (*mdag.Node, key.Key) {
pin/set_test.go
+2
-2
@@ -10,10 +10,10 @@ import (
10
"github.com/ipfs/go-ipfs/exchange/offline"
11
"github.com/ipfs/go-ipfs/merkledag"
12
mh "gx/ipfs/QmYf7ng2hG5XBtJA3tN34DQ2GUN5HNksEw1rLDkmr6vGku/go-multihash"
13
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
14
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
13
u "gx/ipfs/QmZNVWh8LLjAavuQ2JXuFmuYH3C11xo988vSgp7UQrTRj1/go-ipfs-util"
14
"gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
15
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
16
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
17
)
18
19
func ignoreKeys(key.Key) {}
repo/config/version.go
+1
-1
@@ -4,6 +4,6 @@ package config
4
var CurrentCommit string
5
6
// CurrentVersionNumber is the current application's version literal
7
-const CurrentVersionNumber = "0.4.2"
7
+const CurrentVersionNumber = "0.4.3-dev"
8
9
const ApiVersion = "/go-ipfs/" + CurrentVersionNumber + "/"
repo/fsrepo/defaultds.go
+8
-14
@@ -7,12 +7,12 @@ import (
7
repo "github.com/ipfs/go-ipfs/repo"
8
config "github.com/ipfs/go-ipfs/repo/config"
9
"github.com/ipfs/go-ipfs/thirdparty/dir"
10
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
11
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/flatfs"
12
- levelds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/leveldb"
13
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/measure"
14
- mount "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/syncmount"
10
ldbopts "gx/ipfs/QmbBhyDKsY4mbY6xsKt3qu9Y7FPvMJ6qbD8AMjYYvPRw1g/goleveldb/leveldb/opt"
11
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/flatfs"
13
+ levelds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/leveldb"
14
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/measure"
15
+ mount "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/syncmount"
16
)
17
18
const (
@@ -31,16 +31,10 @@ func openDefaultDatastore(r *FSRepo) (repo.Datastore, error) {
31
return nil, fmt.Errorf("unable to open leveldb datastore: %v", err)
32
}
33
34
- // 4TB of 256kB objects ~=17M objects, splitting that 256-way
35
- // leads to ~66k objects per dir, splitting 256*256-way leads to
36
- // only 256.
37
- //
38
- // The keys seen by the block store have predictable prefixes,
39
- // including "/" from datastore.Key and 2 bytes from multihash. To
40
- // reach a uniform 256-way split, we need approximately 4 bytes of
41
- // prefix.
34
syncfs := !r.config.Datastore.NoSync
43
- blocksDS, err := flatfs.New(path.Join(r.path, flatfsDirectory), 4, syncfs)
35
+ // 5 bytes of prefix gives us 25 bits of freedom, 16 of which are taken by
36
+ // by the Qm prefix. Leaving us with 9 bits, or 512 way sharding
37
+ blocksDS, err := flatfs.New(path.Join(r.path, flatfsDirectory), 5, syncfs)
38
if err != nil {
39
return nil, fmt.Errorf("unable to open flatfs datastore: %v", err)
40
}
repo/fsrepo/fsrepo.go
+2
-2
@@ -19,14 +19,14 @@ import (
19
serialize "github.com/ipfs/go-ipfs/repo/fsrepo/serialize"
20
dir "github.com/ipfs/go-ipfs/thirdparty/dir"
21
logging "gx/ipfs/QmNQynaz7qfriSUJkiEZUrm2Wen1u3Kj9goZzWtrPyu7XR/go-log"
22
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/measure"
22
util "gx/ipfs/QmZNVWh8LLjAavuQ2JXuFmuYH3C11xo988vSgp7UQrTRj1/go-ipfs-util"
23
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/measure"
24
)
25
26
var log = logging.Logger("fsrepo")
27
28
// version number that we are currently expecting to see
29
-var RepoVersion = "3"
29
+var RepoVersion = "4"
30
31
var migrationInstructions = `See https://github.com/ipfs/fs-repo-migrations/blob/master/run.md
32
Sorry for the inconvenience. In the future, these will run automatically.`
repo/fsrepo/fsrepo_test.go
+1
-1
@@ -9,7 +9,7 @@ import (
9
10
"github.com/ipfs/go-ipfs/repo/config"
11
"github.com/ipfs/go-ipfs/thirdparty/assert"
12
- datastore "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
12
+ datastore "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
13
)
14
15
// swap arg order
repo/repo.go
+1
-1
@@ -5,7 +5,7 @@ import (
5
"io"
6
7
config "github.com/ipfs/go-ipfs/repo/config"
8
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
8
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
9
)
10
11
var (
routing/dht/dht.go
+1
-1
@@ -23,10 +23,10 @@ import (
23
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
24
ci "gx/ipfs/QmUWER4r4qMvaCnX5zREcfyiWN7cXN9g3a7fkRqNz8qWPP/go-libp2p-crypto"
25
proto "gx/ipfs/QmZ4Qi3GaRbjcx28Sme5eMH7RQjGkt8wHxt2a65oLaeFEV/gogo-protobuf/proto"
26
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
26
host "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/host"
27
protocol "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/protocol"
28
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
29
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
30
)
31
32
var log = logging.Logger("dht")
routing/dht/dht_test.go
+2
-2
@@ -14,8 +14,8 @@ import (
14
record "github.com/ipfs/go-ipfs/routing/record"
15
ci "github.com/ipfs/go-ipfs/thirdparty/testutil/ci"
16
travisci "github.com/ipfs/go-ipfs/thirdparty/testutil/ci/travis"
17
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
18
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
17
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
18
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
19
20
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
21
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
routing/dht/ext_test.go
+2
-2
@@ -10,8 +10,8 @@ import (
10
routing "github.com/ipfs/go-ipfs/routing"
11
pb "github.com/ipfs/go-ipfs/routing/dht/pb"
12
record "github.com/ipfs/go-ipfs/routing/record"
13
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
14
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
13
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
14
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
15
16
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
17
ggio "gx/ipfs/QmZ4Qi3GaRbjcx28Sme5eMH7RQjGkt8wHxt2a65oLaeFEV/gogo-protobuf/io"
routing/dht/handlers.go
+1
-1
@@ -8,7 +8,7 @@ import (
8
key "github.com/ipfs/go-ipfs/blocks/key"
9
pb "github.com/ipfs/go-ipfs/routing/dht/pb"
10
lgbl "github.com/ipfs/go-ipfs/thirdparty/loggables"
11
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
11
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
13
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
14
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
routing/dht/providers/providers.go
+2
-2
@@ -11,9 +11,9 @@ import (
11
goprocessctx "gx/ipfs/QmQopLATEYMNg7dVqZRNDfeE2S1yKy8zrRh5xnYiuqeZBn/goprocess/context"
12
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
13
lru "gx/ipfs/QmVYxfoJQiZijTgPNHCHgHELvQpbsJNTg6Crmc3dQkj3yy/golang-lru"
14
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
15
- dsq "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/query"
14
base32 "gx/ipfs/Qmb1DA2A9LS2wR4FFweB4uEDomFsdmnw1VLawLE1yQzudj/base32"
15
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
16
+ dsq "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/query"
17
18
key "github.com/ipfs/go-ipfs/blocks/key"
19
routing/dht/providers/providers_test.go
+1
-1
@@ -7,7 +7,7 @@ import (
7
8
key "github.com/ipfs/go-ipfs/blocks/key"
9
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
10
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
10
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
11
12
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
13
)
routing/mock/centralized_client.go
+1
-1
@@ -8,7 +8,7 @@ import (
8
routing "github.com/ipfs/go-ipfs/routing"
9
dhtpb "github.com/ipfs/go-ipfs/routing/dht/pb"
10
"github.com/ipfs/go-ipfs/thirdparty/testutil"
11
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
11
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
13
logging "gx/ipfs/QmNQynaz7qfriSUJkiEZUrm2Wen1u3Kj9goZzWtrPyu7XR/go-log"
14
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
routing/mock/centralized_server.go
+2
-2
@@ -7,8 +7,8 @@ import (
7
8
key "github.com/ipfs/go-ipfs/blocks/key"
9
"github.com/ipfs/go-ipfs/thirdparty/testutil"
10
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
11
- dssync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
10
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
11
+ dssync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
12
13
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
14
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
routing/mock/dht.go
+2
-2
@@ -3,10 +3,10 @@ package mockrouting
3
import (
4
dht "github.com/ipfs/go-ipfs/routing/dht"
5
"github.com/ipfs/go-ipfs/thirdparty/testutil"
6
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
7
- sync "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
6
mocknet "gx/ipfs/QmZ8bCZpMWDbFSh6h2zgTYwrhnjrGM5c9WCzw72SU8p63b/go-libp2p/p2p/net/mock"
7
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
8
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
9
+ sync "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
10
)
11
12
type mocknetserver struct {
routing/mock/interface.go
+1
-1
@@ -11,8 +11,8 @@ import (
11
"github.com/ipfs/go-ipfs/thirdparty/testutil"
12
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
13
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
14
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
14
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
15
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
16
)
17
18
// Server provides mockrouting Clients
routing/offline/offline.go
+1
-1
@@ -8,7 +8,7 @@ import (
8
routing "github.com/ipfs/go-ipfs/routing"
9
pb "github.com/ipfs/go-ipfs/routing/dht/pb"
10
record "github.com/ipfs/go-ipfs/routing/record"
11
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
11
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
13
logging "gx/ipfs/QmNQynaz7qfriSUJkiEZUrm2Wen1u3Kj9goZzWtrPyu7XR/go-log"
14
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
routing/supernode/server.go
+1
-1
@@ -8,7 +8,7 @@ import (
8
dhtpb "github.com/ipfs/go-ipfs/routing/dht/pb"
9
record "github.com/ipfs/go-ipfs/routing/record"
10
proxy "github.com/ipfs/go-ipfs/routing/supernode/proxy"
11
- datastore "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
11
+ datastore "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
12
13
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
14
peer "gx/ipfs/QmRBqJF7hb8ZSpRcMwUt8hNhydWcxGEhtk81HKq6oUwKvs/go-libp2p-peer"
routing/supernode/server_test.go
+1
-1
@@ -5,7 +5,7 @@ import (
5
6
key "github.com/ipfs/go-ipfs/blocks/key"
7
dhtpb "github.com/ipfs/go-ipfs/routing/dht/pb"
8
- datastore "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
8
+ datastore "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
9
)
10
11
func TestPutProviderDoesntResultInDuplicates(t *testing.T) {
test/integration/grandcentral_test.go
+2
-2
@@ -8,9 +8,9 @@ import (
8
"math"
9
"testing"
10
11
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
12
- syncds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
11
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
12
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
13
+ syncds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
14
15
key "github.com/ipfs/go-ipfs/blocks/key"
16
core "github.com/ipfs/go-ipfs/core"
test/sharness/t0080-repo.sh
+6
-6
@@ -108,14 +108,14 @@ test_expect_success "'ipfs repo gc' removes file" '
108
grep "removed $PATCH_ROOT" actual7
109
'
110
111
-# TODO: there seems to be a serious bug with leveldb not returning a key.
112
-test_expect_failure "'ipfs refs local' no longer shows file" '
111
+test_expect_success "'ipfs refs local' no longer shows file" '
112
EMPTY_DIR=QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn &&
114
- echo "$EMPTY_DIR" >expected8 &&
115
- echo "$HASH_WELCOME_DOCS" >>expected8 &&
116
- ipfs refs -r "$HASH_WELCOME_DOCS" >>expected8 &&
113
ipfs refs local >actual8 &&
118
- test_sort_cmp expected8 actual8
114
+ grep "QmYCvbfNbCwFR45HiNP45rwJgvatpiW38D961L5qAhUM5Y" actual8 &&
115
+ grep "$EMPTY_DIR" actual8 &&
116
+ grep "$HASH_WELCOME_DOCS" actual8 &&
117
+ test_must_fail grep "$HASH" actual8 &&
118
+ test_must_fail grep "$PATCH_ROOT" actual8
119
'
120
121
test_expect_success "adding multiblock random file succeeds" '
test/sharness/t0084-repo-read-rehash.sh
+2
-2
@@ -16,8 +16,8 @@ test_init_ipfs
16
H_BLOCK1=$(echo "Block 1" | ipfs add -q)
17
H_BLOCK2=$(echo "Block 2" | ipfs add -q)
18
19
-BS_BLOCK1="1220f18e/1220f18e07ebc69997909358f28b9d2c327eb032b0afab6bbc7fd7f399a7b7590be4.data"
20
-BS_BLOCK2="1220dc58/1220dc582e51f1f98b1f2d1c1baaa9f7b11602239ed42fbdf8f52d67e63cc03df12a.data"
19
+BS_BLOCK1="CIQPD/CIQPDDQH5PDJTF4QSNMPFC45FQZH5MBSWCX2W254P7L7HGNHW5MQXZA.data"
20
+BS_BLOCK2="CIQNY/CIQNYWBOKHY7TCY7FUOBXKVJ66YRMARDT3KC7PPY6UWWPZR4YA67CKQ.data"
21
22
23
test_expect_success 'blocks are swapped' '
test/supernode_client/main.go
+2
-2
@@ -24,8 +24,8 @@ import (
24
ds2 "github.com/ipfs/go-ipfs/thirdparty/datastore2"
25
"github.com/ipfs/go-ipfs/thirdparty/ipfsaddr"
26
unit "github.com/ipfs/go-ipfs/thirdparty/unit"
27
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
28
- syncds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
27
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
28
+ syncds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
29
30
logging "gx/ipfs/QmNQynaz7qfriSUJkiEZUrm2Wen1u3Kj9goZzWtrPyu7XR/go-log"
31
pstore "gx/ipfs/QmQdnfvZQuhdT93LNc5bos52wAmdr3G2p6G8teLJMEN32P/go-libp2p-peerstore"
thirdparty/datastore2/datastore_closer.go
+1
-1
@@ -3,7 +3,7 @@ package datastore2
3
import (
4
"io"
5
6
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
6
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
7
)
8
9
type ThreadSafeDatastoreCloser interface {
thirdparty/datastore2/delayed.go
+2
-2
@@ -1,8 +1,8 @@
1
package datastore2
2
3
import (
4
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
5
- dsq "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/query"
4
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
5
+ dsq "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/query"
6
7
delay "github.com/ipfs/go-ipfs/thirdparty/delay"
8
)
thirdparty/datastore2/threadsafe.go
+1
-1
@@ -3,7 +3,7 @@ package datastore2
3
import (
4
"io"
5
6
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
6
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
7
)
8
9
// ClaimThreadSafe claims that a Datastore is threadsafe, even when
thirdparty/testutil/datastore.go
+2
-2
@@ -2,8 +2,8 @@ package testutil
2
3
import (
4
ds2 "github.com/ipfs/go-ipfs/thirdparty/datastore2"
5
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
6
- syncds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
5
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
6
+ syncds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
7
)
8
9
func ThreadSafeCloserMapDatastore() ds2.ThreadSafeDatastoreCloser {
unixfs/mod/dagmodifier_test.go
+2
-2
@@ -17,11 +17,11 @@ import (
17
mdag "github.com/ipfs/go-ipfs/merkledag"
18
ft "github.com/ipfs/go-ipfs/unixfs"
19
uio "github.com/ipfs/go-ipfs/unixfs/io"
20
- "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore/sync"
20
u "gx/ipfs/QmZNVWh8LLjAavuQ2JXuFmuYH3C11xo988vSgp7UQrTRj1/go-ipfs-util"
21
+ "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore/sync"
22
23
- ds "gx/ipfs/QmZ6A6P6AMo8SR3jXAwzTuSU6B9R2Y4eqW2yW9VvfUayDN/go-datastore"
23
context "gx/ipfs/QmZy2y8t9zQH2a1b8q2ZSLKp17ATuJoCNxxyMFG5qFExpt/go-net/context"
24
+ ds "gx/ipfs/QmbCg24DeRKaRDLHbzzSVj7xndmWCPanBLkAM7Lx2nbrFs/go-datastore"
25
)
26
27
func getMockDagServ(t testing.TB) mdag.DAGService {