Raúl Kripalani
4c43736fe9
pstoreds: tighten up gc-based peerstore.
...
Introduces custom types in protobuf to serde directly into multiaddrs
and peer IDs. Simplify purge by ordering addrs by expiry. In general,
getting this readier for merge.
2018-11-15 13:32:08 +00:00
Raúl Kripalani
c423e9e997
pstoreds: migrate from strict TTL to GC-based expiry.
...
Each entry in the address book KV store now represents a full peer
with all its addresses. Expiries and TTLs are kept inline. Records are
serialised with Protobuf.
Housekeeping is performed on retrieve, and via a periodic GC routine.
The architecture mimics a write-through cache, although not strictly.
2018-11-13 16:57:51 +00:00
Hannah Howard
3a5fba8af2
Merge pull request #46 from libp2p/gx/update-kque0y
...
gx publish 2.0.11
2018-11-09 15:47:08 -08:00
hannahhoward
129aa29181
gx publish 2.0.11
2018-11-09 15:31:38 -08:00
Steven Allen
00679cccdb
Merge pull request #45 from zhizouxiao/fix/peerinfo-unmarshal
...
PeerInfo UnMarshal Error #393
2018-11-08 20:54:45 -08:00
wzp
de5683cb85
add marshal unittest #393
2018-11-09 11:13:06 +08:00
Eli Wang
ab8c6cbfd1
bug fix: UnmarshalJSON should take a pointer
2018-11-08 10:40:39 +08:00
wzp
e9ca112fea
PeerInfo UnMarshal Error #393
2018-11-08 10:12:34 +08:00
Steven Allen
545f62f160
gx publish 2.0.10
2018-11-02 21:10:55 -07:00
Steven Allen
d351b9ad3b
gx publish 2.0.9
2018-11-02 18:06:06 -07:00
Steven Allen
491863b2bf
gx publish 2.0.8
2018-11-02 16:33:25 -07:00
Steven Allen
9e5b5504df
Merge branch 'gx/update-fzw9j3'
2018-11-02 16:06:33 -07:00
Steven Allen
126e7c5eb4
gx publish 2.0.7
2018-11-02 15:55:27 -07:00
Steven Allen
d544f80a45
Merge pull request #44 from libp2p/fix/inline-test
...
fix the inline key test
2018-11-02 15:52:29 -07:00
Steven Allen
62b237fea1
ci: update go
2018-11-02 15:49:58 -07:00
Steven Allen
6c58e9f9fa
fix the inline key test
...
RandTestKeyPair uses RSA keys but we now forbid any RSA key under 512 bits.
2018-11-02 15:24:44 -07:00
Steven Allen
6295e61c9f
gx publish 2.0.6
2018-10-24 09:45:00 -07:00
Steven Allen
98ce9158bd
gx publish 2.0.5
2018-10-16 11:39:03 +01:00
Steven Allen
3585c4af62
Merge pull request #42 from libp2p/feat/fix-peer-inlining
...
update to match new ExtractPublicKey API
2018-10-16 11:38:02 +01:00
Steven Allen
588ab36ce8
update to match new ExtractPublicKey API
...
This is a "more correct" API and we might as well fix this before it becomes
used all over the place. The new API returns ErrNoPublicKey when there is no
inlined key.
This *also* fixes a bug where the datastore-backed keystore would panic if
`ExtractPublicKey` returned `nil, nil`.
2018-10-16 11:31:32 +01:00
Raúl Kripalani
4c151480e8
Merge pull request #41 from libp2p/fix/smaller-addr-book
...
store expiring addrs by pointer
2018-10-16 09:47:39 +01:00
Steven Allen
68a73712e1
store expiring addrs by pointer
...
Hopefully, this reduces the space wasted by using maps (see the comment in the
committed code).
2018-10-14 15:11:35 +01:00
Raúl Kripalani
b87bbd4e21
Merge pull request #40 from raulk/b32
...
Replace b58-encoded keys with b32 (no padding) + test against multiple ds. Resolves #38 .
2018-10-11 17:55:56 +01:00
Raúl Kripalani
1e98679c50
gx publish 2.0.4
2018-10-11 17:51:04 +01:00
Raúl Kripalani
43dbbcfb18
gx upgrade go-ds-leveldb.
2018-10-11 17:50:35 +01:00
Raúl Kripalani
ad3e48181c
Merge branch 'master' into b32
2018-10-11 15:53:56 +01:00
Steven Allen
a491d36013
gx publish 2.0.4
2018-10-10 11:29:57 +01:00
Steven Allen
3e0c5fae56
gx publish 2.0.3
2018-10-05 13:38:44 -07:00
Raúl Kripalani
e18b128538
add go-ds-leveldb gx dep for tests.
2018-10-04 22:11:51 +01:00
Raúl Kripalani
4e2e2de65f
ds key encoding: b58 => b32 (no padding).
2018-10-04 10:51:57 +01:00
Raúl Kripalani
61b5355499
run tests against multiple datastores.
...
leveldb disabled for now, until TTL shim is implemented.
2018-10-04 10:50:45 +01:00
Steven Allen
2a27e91a67
Merge pull request #39 from libp2p/fix/allocations
...
reduce allocations and garbage collect the in-memory peerstore
2018-10-03 17:43:17 -07:00
Steven Allen
6daee68364
memoryAddrBook: document gc precondition
2018-10-03 17:42:54 -07:00
Steven Allen
e3a2970d93
add garbage collection for in-memory peerstore
...
There are better ways to do this but pausing dialing once an hour likely isn't
going to break anything and is the simplest approach.
2018-10-02 10:49:55 -07:00
Steven Allen
6d5cedf098
revert to storing peer addresses in a map
...
We switched to a slice to reduce the amount of memory the peerstore ended up
taking up unfortunately, this really killed us in allocations. Looking at
go-ipfs profiles, I'm worried that memory fragmentation is killing us so I'd
like to revert to the old behavior.
Note: The real solution here is dealing with "address abusers".
2018-10-01 22:16:08 -07:00
Raúl Kripalani
0df1488a3f
Merge pull request #37 from raulk/ds-backed-keybook-metadata
...
Datastore-backed implementations of KeyBook and PeerMetadata
2018-09-29 20:42:58 +01:00
Raúl Kripalani
7c46c1e806
gx import libp2p/go-buffer-pool.
2018-09-28 19:49:49 +01:00
Raúl Kripalani
3e80eb1873
review comments.
2018-09-28 18:47:41 +01:00
Raúl Kripalani
dd3cb20421
add explicit import aliases.
2018-09-28 14:18:05 +01:00
Raúl Kripalani
1b72b920ed
datastore-backed impls of KeyBook and PeerMetadata.
2018-09-28 14:04:52 +01:00
Raúl Kripalani
dbbd2fd262
Merge pull request #36 from libp2p/txn-err
...
Adapt peerstore for ds.NewTransaction() now returning error
2018-09-27 21:23:09 +01:00
Raúl Kripalani
cf1552629a
gx publish 2.0.2
2018-09-27 21:01:06 +01:00
Raúl Kripalani
ec982d5c1d
gx update.
2018-09-27 21:00:39 +01:00
Raúl Kripalani
196ad55260
ds.NewTransaction() can now return an error.
2018-09-27 20:59:57 +01:00
Raúl Kripalani
56307a5e29
fix links in readme.
2018-09-27 20:59:57 +01:00
Steven Allen
eef8402e04
gx publish 2.0.1
2018-09-24 05:10:15 -07:00
Raúl Kripalani
6f9a3c21c8
Merge pull request #34 from libp2p/ttldatastore
...
Store-native TTL management
2018-09-20 14:10:40 +01:00
Raúl Kripalani
0f81bdf419
introduce struct for persisted value.
2018-09-18 19:01:24 +01:00
Raúl Kripalani
5b9ad98cc2
remove noop Stop() in address book.
2018-09-18 19:00:07 +01:00
Raúl Kripalani
4b2c1212e7
add a test and fix broken logic.
2018-09-14 18:27:23 +01:00