Steven Allen
9f0782bdac
fix(providers): upgrade warnings to errors
...
These errors all mean something is going very wrong.
2020-02-18 12:40:49 -05:00
Adin Schmahmann
3e24f352aa
provider record keys can be an arbitrary byte array less than 80 bytes instead of only a multihash
2019-12-19 12:00:51 -05:00
Adin Schmahmann
a4b38eebee
feat(dht): provider records use multihashes instead of CIDs
2019-12-19 12:00:51 -05:00
Steven Allen
0d48254082
chore(dep): update
...
Update deps:
* Switch to multiformats/go-base32
* Regenerate protobuf decoding code
2019-12-02 13:05:53 -05:00
Raúl Kripalani
31765355df
migrate to consolidated types. ( #344 )
2019-05-26 23:33:15 +01:00
Steven Allen
e7e9186702
providers: run datastore GC concurrently
...
Motivation: Walking the datastore can take time and currently blocks
adding/removing providers.
We need to do this in the same goroutine to avoid some logical races.
2019-04-19 14:59:58 -07:00
Steven Allen
e4d739c96d
providers: flush batch on process close
2019-04-18 16:22:35 -07:00
Steven Allen
498dd81699
fix(providers): gc
...
Otherwise, we'll delete everything.
2019-04-18 16:10:29 -07:00
Steven Allen
fbb29ea6b6
providers: optimize GC
...
1. Don't be n^2.
2. Don't bother walking the cache, just drop it.
2019-04-13 09:18:28 -07:00
Steven Allen
a3b9767038
providers: use the non-locking LRU
...
We only access it from a single goroutine.
2019-04-13 09:18:28 -07:00
Steven Allen
f4e6d425bd
providers: make sure to close provider query, even on error
2019-04-13 09:18:28 -07:00
Steven Allen
3c9d044798
providers: add some documentation
2019-04-13 09:18:28 -07:00
Steven Allen
24c3841189
providers: delete expired provider records on load
2019-04-13 09:18:28 -07:00
Steven Allen
2a3899be0d
providers: improve time parsing error checking
2019-04-13 09:18:28 -07:00
Steven Allen
069736916d
providers: don't load into the cache on write
...
This is just extra work as we write through anyways.
2019-04-13 09:18:28 -07:00
Steven Allen
95a6c2509f
providers: use raw cids as map keys
2019-04-13 09:18:28 -07:00
Matt Joiner
86d78dc072
golangci-lint run -D errcheck ( #298 )
2019-03-14 11:07:15 +11:00
Kevin Atkinson
a303c45371
gx update and fix code to use new Cid type
2018-09-11 21:54:47 -04:00
RideWindX
47e3454f42
Set KeysOnly to true of Datastore.Query()
...
License: MIT
Signed-off-by: Jason Chang <ridewindx@163.com>
2018-03-08 21:29:49 +08:00
Hector Sanjuan
2a04b6ae50
gx publish 3.0.17
2018-02-27 20:27:24 +01:00
Steven Allen
87251f9cb3
explain condition
2017-12-07 13:54:48 -08:00
Steven Allen
491afc8e27
optimize allocations
...
Try to preallocate slices up-front instead of repeatedly reallocating.
2017-12-05 15:46:24 -08:00
Kevin Atkinson
ce68333cce
Use res.NextSync() instead of res.Next() to avoid using a channel.
2016-11-28 20:38:32 -05:00
Vasily Kolobkov
f3ebd68803
Check Datastore.Query call for errors
...
License: MIT
Signed-off-by: Vasily Kolobkov <polezaivsani@openmailbox.org>
2016-11-16 15:49:54 +02:00
Vasily Kolobkov
78f3d979f7
Dispose of ticker on teardown
...
License: MIT
Signed-off-by: Vasily Kolobkov <polezaivsani@openmailbox.org>
2016-11-16 15:49:54 +02:00
Vasily Kolobkov
bd6e9b1d2f
Load providers from datastore on cache miss
...
Cache miss might mean that provider records where offloaded to
datastore and need to be brough back up in order to have a consistent
cache entry.
2016-11-16 15:49:54 +02:00
Jeromy
b152b1ed87
use NewKey over RawKey as it doesnt exist yet
2016-11-14 18:32:15 -08:00
Jeromy
1b4f407655
add errors and such to log failure messages
2016-11-14 18:31:44 -08:00
Jeromy
2020aa5d10
use old 'Next' method for now
2016-11-14 17:41:36 -08:00
Jeromy
b17e206c81
use an iterator for provider key sweeping
2016-11-14 17:41:05 -08:00
Jeromy
044ea16a66
Use sync iterator and avoid strings.Split
2016-11-14 17:05:34 -08:00
Jeromy
85fe35e758
reduce overhead casting between ds.Keys and strings
2016-11-11 10:13:12 -08:00
Jeromy
6894f33507
update dependencies after package extraction funtime
2016-10-05 12:34:28 -07:00
Jeromy
1af246f18a
remove unneeded debug error message
2016-10-04 11:23:27 -07:00
Jeromy
1ac83501a2
fix providers code, cant use cids as lru keys
2016-09-30 10:56:47 -07:00
Jeromy
e00b3ca0a4
use stdlib context and clean up deps
2016-09-30 10:24:03 -07:00
Jeromy
c372d79e42
switch to strings and cids instead of keys
2016-09-30 10:13:57 -07:00
George Antoniadis
30d43d22e0
Fix dependencies
2016-09-02 20:21:23 +01:00
George Antoniadis
5f3e63aa46
Undo gx rewrites and add gx package.json
2016-08-21 17:18:58 +01:00
Jeromy
1bd98f05f4
use batching datastore for providers storage
...
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
2016-07-26 10:48:25 -07:00
Jeromy
29c36b20d8
update go-datastore changes 0.1.2
...
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
2016-07-01 22:40:57 -07:00
Jeromy
7c91e7bdd1
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>
2016-07-01 14:15:06 -07:00
Jakub Sztandera
36a7fd1b73
routing: Use correct error variable
...
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2016-07-01 14:51:19 +02:00
Jeromy
62a938caf8
use no padding encoding
...
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
2016-06-27 14:43:01 -07:00
Jeromy
c8bc7ce39c
Write providers to disk to avoid memory leaks
...
License: MIT
Signed-off-by: Jeromy <why@ipfs.io>
2016-06-25 09:53:59 -07:00