Go to file
Alex Grintsvayg 2a1557845d
wrap blob insertion in tx. fixes lbryio/lbry-sdk#3296
The problem is that inserting an sd blob with ~5k
blobs takes longer than 30 seconds. So the client
times out and retries the request. At that point,
reflector is not done inserting so it replies with
a smaller number of blobs than it should. The client
uploads that many blobs and marks the stream as
reflected. The remaining blobs never get uploaded.

Doing the insert inside a transaction should be
faster than doing 10k (2 per blob) inserts
independently.
2021-05-24 10:40:31 -04:00
cluster upgrade to lbry.go v2.4.0 2019-11-13 19:11:35 -05:00
cmd add http server/client 2021-05-21 05:49:02 +02:00
db wrap blob insertion in tx. fixes lbryio/lbry-sdk#3296 2021-05-24 10:40:31 -04:00
internal/metrics add metrics 2021-05-21 19:09:02 +02:00
meta track approximate access time for blobs 2020-10-05 18:08:53 -04:00
peer add http server/client 2021-05-21 05:49:02 +02:00
prism save uploaded blobs and work around the blocklist issue 2021-01-05 05:09:55 +01:00
publish fix mess with lbry.go 2021-04-13 00:52:56 +02:00
reflector add guage metrics for go routines in reflector package 2021-05-20 18:01:13 -04:00
server/http add metrics 2021-05-21 19:09:02 +02:00
shared wrap blob insertion in tx. fixes lbryio/lbry-sdk#3296 2021-05-24 10:40:31 -04:00
store fix unsafe dereference 2021-05-21 21:06:59 +02:00
updater fix panic when there were no recent errors 2018-08-31 06:38:38 -04:00
wallet fix issues caused by beamer's renaming 2021-03-29 19:56:18 +02:00
.gitignore s3 finally working 2018-08-30 19:52:29 -04:00
.gometalinter.json some linting 2018-08-30 20:20:15 -04:00
.travis.yml drop mediainfo requirement since travis cant install it 2020-10-05 18:28:41 -04:00
config.tmpl readme 2018-09-27 16:46:49 -04:00
Dockerfile Add dockerfile 2020-05-06 00:36:35 +07:00
go.mod update lbry.go dep 2021-05-21 18:05:37 +02:00
go.sum update lbry.go dep 2021-05-21 18:05:37 +02:00
LICENSE Update LICENSE 2020-02-03 05:58:24 +07:00
main.go Add gops to reflector 2020-07-09 15:02:32 +02:00
Makefile switch to go modules, drop testing against go master 2018-12-26 14:12:04 -05:00
readme.md go 1.13 2019-10-03 14:12:42 -04:00

Reflector

A reflector cluster to accept LBRY content for hosting en masse, rehost the content, and make money on data fees (TODO). This code includes Go implementations of the LBRY peer protocol, reflector protocol, and DHT.

Installation

coming soon

Usage

coming soon

Running from Source

This project requires Go v1.11 or higher because it uses Go modules.

git clone git@github.com:lbryio/reflector.go.git
cd reflector.go
make
./bin/prism-bin

Contributing

coming soon

License

This project is MIT licensed.

Security

We take security seriously. Please contact security@lbry.com regarding any security issues. Our PGP key is here if you need it.

Contact

The primary contact for this project is @lyoshenka (grin@lbry.com)