Lawrence, Rendall
96cc4f7eac
update go-redis to v9
2023-02-10 00:19:42 +03:00
Lawrence, Rendall
d8d6f2cf4b
refactor code for context fallthrough
2022-11-01 17:02:24 +03:00
Lawrence, Rendall
d6de38bdbd
(wip) pass context from frontend request down to store
2022-10-31 18:57:57 +03:00
Lawrence, Rendall
c1e041b4f8
(wip) fix invalid http compact address encode
...
* add packages to loggers
* split config examples with different storages
2022-10-25 18:38:55 +03:00
Lawrence, Rendall
dff0ba6da8
(wip) rework configuration to support multiple frontends
2022-10-21 17:53:03 +03:00
Širhoe Biazhkovič
3d48b882c5
fix pg test and lint warning
...
TODO: update doc and sample config
2022-10-17 19:50:59 +03:00
Širhoe Biazhkovič
3506865329
add download count number while scrape
...
* remove storage configuration print
* change test for pg storage
2022-10-17 18:37:07 +03:00
Lawrence, Rendall
694592f881
fix list warnings
...
* remove deprecated lint checks
* reformat files
* update dependencies
2022-09-06 13:34:57 +03:00
Lawrence, Rendall
0fd0e06360
(tested) change DataStorage interface to accept byte array as value
2022-06-23 21:01:05 +03:00
Lawrence, Rendall
0564dfce4b
(untested) add pg storage tests
2022-06-18 20:52:57 +03:00
Lawrence, Rendall
21eaea2b8a
(untested) implement gc, stats and scrape in pg storage
...
fix query call to use columns names while row scan
2022-06-16 17:49:20 +03:00
Lawrence, Rendall
8430e1f31f
Initial work on implementing postgresql storage
...
Generated placeholders to use raw sql queries with `pgx` driver
and implemented put/del peer and announce functions
* inline GCAware and StatisticsAware to PeerStorage
* fix redis doc configuration sample
* update dependencies
2022-06-15 21:42:43 +03:00
Lawrence, Rendall
79c92df0f8
(tested) add hooks check when ping http route called
2022-05-14 01:36:21 +03:00
Lawrence, Rendall
c50a532181
(tested) complete replace logrus with zerolog
...
* remove cobra dependency and split execs to mochi and e2e
* add log init synchronization
2022-05-02 03:13:58 +03:00
Lawrence, Rendall
64b27c2df6
(tested) preserve all addresses of peer
...
* add multiple addresses in request structures and frontend parsers
* move per-ip peer fetch/store from storage to internal hooks
* fetch/store both v1 and v2 info hashes
2022-04-27 00:52:17 +03:00
Lawrence, Rendall
b365abd296
(untested) sanitize code
...
* remove peer argument from scrape swarm storage call
* replace Peer field with netip.Addr in ScrapeRequest
* add man for keydb storage
* update readme
2022-04-25 19:05:41 +03:00
Lawrence, Rendall
ef03291efe
(tested) rollback to separate v4 and v6 keys in redis/keydb
...
* sanitize log fields
* remove miniredis dependency
* store/collect information about hybrid (v2to1) hashes
2022-04-24 20:32:15 +03:00
Lawrence, Rendall
22f459315b
(wip) implement keydb store
...
* make redis store reusable for keydb
* replace redis HKeys calls in AnnouncePeers with HRandField
* change signature of storage.ScrapeSwarm
2022-04-24 02:23:18 +03:00
Lawrence, Rendall
4131c64e89
(wip) create new driver for KeyDB
...
* move GC and prometheus aware storage functions to separate interfaces
2022-04-23 01:28:06 +03:00
Lawrence, Rendall
a1ce79b003
(untested) merge ipv4 and ipv6 peers and pass v4 peers from db to v6 requester
2022-04-22 00:54:56 +03:00
Lawrence, Rendall
f9c72341c0
(minor) refactor redis GC and fix TX calls,
...
add indicator that metrics are running
2022-04-17 00:57:30 +03:00
Lawrence, Rendall
01064fd21a
(tested) split storage to data and peer interfaces,
...
add option for persisting (or not) torrent approval data
2022-04-16 18:50:19 +03:00
Lawrence, Rendall
8cd8343757
(tested) refactor code
...
* add sentinel master parameter into driver config
* replace yaml double deserialization with `mapstructure` in initializers
* replace struct initializers with registered functions
* add torrent approval MD and a sanitize rest MDs
2022-04-16 00:51:48 +03:00
Lawrence, Rendall
397e106396
(tested) fix redis to pass tests
...
* delete info hash count key from redis (replaced with SCARD on infohash set)
* add GC test
* add peer.Addr() functio to always return unwrapped address if 4to6 appear
2022-04-15 01:33:45 +03:00
Lawrence, Rendall
5c2471ca9b
(untested) Merge commit e56ad81 from https://github.com/jzelinskie/chihaya
...
* rename/replace redis keys
2022-04-14 19:14:12 +03:00
Lawrence, Rendall
781fa9440f
(done) replace redigo with go-redis
...
* replace redis keys with RawString encoded values (delete SerializedPeer)
* merge peers got from pre-hools with store data
2022-04-14 01:13:18 +03:00
Lawrence, Rendall
1fcddf5102
(WIP) replace redigo with go-redis
2022-04-13 01:12:00 +03:00
Lawrence, Rendall
c9e0af8b1e
fix lint errors
2022-04-12 21:48:54 +03:00
Lawrence, Rendall
554ae6fcd6
Reformat comments
2022-04-12 18:32:17 +03:00
Lawrence, Rendall
c1956d68f6
Remove YAML/MD lint configs, reformat stdlib imports
2022-04-12 18:10:51 +03:00
Širhoe Biazhkovič
c7edbb52f2
Merge commits 129aac230aa..828edb8fd8b from https://github.com/chihaya/chihaya
2022-04-12 15:58:14 +03:00
Lawrence, Rendall
4dbbb4ad83
Rename to MoChi
2021-12-21 15:24:25 +03:00
Širhoe Biazhkovič
9122aefdd7
Fix storage tests
...
* reformat sources #JR1356
2021-12-21 15:24:25 +03:00
Širhoe Biazhkovič
beb4736b86
Implement simple PGDC methods for storage
...
* sanitize code a little
* move e2e build to 'e2e' tag
2021-12-21 15:24:25 +03:00
Širhoe Biazhkovič
566d99fcd7
Gegin work on shared store for handlers
2021-12-21 15:24:25 +03:00
Širhoe Biazhkovič
8580bb37e0
WIP Add support for custom torrents' approval storages
...
* migrate torrentapproval to list storage
* add initial support for torrent file storage (watch directory with fsnotify)
* replace frontend/http/bencode package with github.com/zeebo/bencode module
* sanitize code (fix warnings)
TODO:
* parse torrent files to get hashes,
* watch directory event types
DON'T use for now
2021-09-04 01:49:01 +03:00
Jimmy Zelinskie
dc753b937c
vendor: move to Go modules for dependencies
...
Fixes #444 .
2019-02-12 20:36:25 -05:00
onestraw
e83f68b952
storage/redis: add exiting info
...
Change-Id: I7876bf420a35b48314d14925f5f2ae591fa2d243
2019-01-28 15:18:21 +08:00
onestraw
9d22b67f74
storage/redis: use redis reply
...
Change-Id: If6e6c2545b12c249413d3d13ea41e127b8d1d9b0
2019-01-21 19:44:33 +08:00
onestraw
fa19ffd050
add @mrd0ll4r 's comments
...
Change-Id: I53616703394f889fa2d0a4e952ac857d99c85218
2019-01-20 17:02:05 +08:00
onestraw
f2ab706f10
fix hlen/hdel race condition
...
Change-Id: Ib82e6e9f0c66d2df80d68fd00e0c6ec6b46a037b
2019-01-16 19:09:39 +08:00
onestraw
d65ab677e7
storage/redis: refactor redis storage
...
- Based on @duyanghao's PR
- Make staticcheck pass
- Address review commentsq
2019-01-04 13:58:20 +08:00
duyanghao
e78892d5ac
Add Support for Redis Storage Backend(To Achieve Chihaya High Availability)
...
Change-Id: I5cf703095d1060ac17e403b86056d3eccad97f2c
Signed-off-by: duyanghao <1294057873@qq.com >
2019-01-03 17:21:13 +08:00
Jimmy Zelinskie
d3f3c81c61
initial architecture overhaul
2013-08-23 15:39:42 -04:00
Jimmy Zelinskie
fe2d43a025
removed redundant var block
2013-08-13 20:21:01 -04:00
Jimmy Zelinskie
3df97fea4d
panic on reads inside of a MULTI
2013-08-13 16:36:10 -04:00
Jimmy Zelinskie
33d1caf670
initiateRead helper
2013-08-13 16:06:22 -04:00
Justin Li
55d2c4ae84
Refactor setting up writes in the redis driver
2013-08-13 02:20:44 -04:00
Justin Li
5084a2ac94
Clean up Tx API
2013-08-13 02:06:15 -04:00
Jimmy Zelinskie
40505091f5
storage reorganized around a pool and transactions
2013-07-25 10:03:04 -04:00