Commit graph

3583 commits

Author SHA1 Message Date
Jonathan Moody
7f9fe4b970 [rpc mempool] More tweaks to dynamicMemUsage(). Add toggleable assertions for max depth and switch completness. Toggle them when running in mempool_test.go. Drop support for reflect.Map, as it's not needed at this time. 2022-07-18 17:17:56 -07:00
Jonathan Moody
eefb1260eb [rpc mempool] Correct comment BTC -> LBC. 2022-07-18 17:17:56 -07:00
Jonathan Moody
a8a44aa988 [rpc mempool] Hide debugging functionality of dynamicMemUsage(). 2022-07-18 17:17:56 -07:00
Jonathan Moody
abb1b8b388 [rpc mempool] Add support for unbroadcastcount to RPC getmempoolinfo. 2022-07-18 17:17:56 -07:00
Jonathan Moody
13e31d033a [rpc mempool] Add support for usage, total_fee, mempoolminfee, minrelaytxfee to RPC getmempoolinfo. 2022-07-18 17:17:56 -07:00
Roy Lee
5499a2c1b3 [lbry] claimtrie: more verbose error message in ResetHeight 2022-07-17 11:32:33 -07:00
Roy Lee
fae4063046 rpc: remove deprecated and unimplemented 'move' 2022-07-14 15:45:06 -07:00
Roy Lee
8d1005706b rpc: remove deprecated and unimplemented 'setaccount' 2022-07-14 15:43:35 -07:00
Roy Lee
bb93a49349 [lbry] config: allow non-localhost connections with TLS disabled 2022-07-11 16:52:38 -07:00
Roy Lee
d5922cd725 [lbry] version: fix version string handling 2022-07-06 20:44:22 -07:00
Roy Lee
3a179a0eee [lbry] rpc: un-embedded attributes in getaddressinfo result
lbcwallet failed to re-generate RPC help message.

The help message generator doesn't handle embedded fields properly.
2022-07-05 20:12:27 -07:00
Jonathan Moody
ca9b4e5529 Rename nameProgressLogger -> claimProgressLogger and tweak log message. 2022-06-14 11:27:58 -07:00
Jonathan Moody
2b7f065855 Adjust and rename blockProgressLogger -> nameProgressLogger. Use it in makeNameHashNext() to track progress. 2022-06-14 11:27:58 -07:00
Jonathan Moody
b859832907 Copy netsync/blocklogger.go to claimtrie/logger.go. 2022-06-14 11:27:58 -07:00
Jonathan Moody
70852905e0 Allow environment var GOMAXPROCS=<N> to override NumCPU(). 2022-06-14 11:03:27 -07:00
Jonathan Moody
5f7b1f1b4f Copy value received by MergeOlder/MergeNewer so caller can't trash the merge result by modifying the contents. 2022-06-06 14:12:30 -07:00
Jonathan Moody
0241e18f42 Harden Marshal/Unmarshal logic for Change.SpentChildren. 2022-06-06 14:12:30 -07:00
Brannon King
b06df3d750 added buffer pool for pebble merge string 2022-06-06 14:12:30 -07:00
Jonathan Moody
15191b7ede
[lbry] runtime: Add --memprofile option
* Add --memprofile option. Add memprofile to sample config.
* Add --memprofile to doc.go.
2022-06-03 12:08:09 -07:00
Jonathan Moody
92a7a2087a
[lbry] runtime: Allow environment var GOGC=<percent> to override hard-coded SetGCPercent(10). 2022-06-03 09:19:55 -07:00
Brannon King
8f95946b17 [lbry] claimtrie: created node cache 2022-05-26 22:04:33 -07:00
Roy Lee
5d5f53c8d8 [lbry] contrib: add a helper script for generating snapshots 2022-05-26 21:53:59 -07:00
Roy Lee
6e36118193
[lbry] claimtrie: update CLI to support other tools
- fix default app dir name
- enable debug level for cli
- block sub command to output hash, height, or both
2022-05-26 21:52:15 -07:00
Roy Lee
e48200f53a [lbry] wire: limit the blocks of getdata message
In the cuurent codebase, OnGetData() handler penalizes / ban peers
requesting large blocks.

  server.go:
  @@ -649,7 +649,7 @@ func (sp *serverPeer) OnGetData(_ *peer.Peer, msg *wire.MsgGetData) {
          // bursts of small requests are not penalized as that would potentially ban
          // peers performing IBD.
          // This incremental score decays each minute to half of its value.
          if sp.addBanScore(0, uint32(length)*99/wire.MaxInvPerMsg, "getdata") {
                  return
          }

This accidentally penalize nodes trying to catch up checkpoints whose
'getdata' requests would be as large as the wire.MaxInvPerMsg, and get
banned very soon.

This patch limit getdata request to wire.MaxInvPerMsg/99 blocks.
2022-05-25 22:00:38 -07:00
Roy Lee
4a8d390a06
[lbry] ci: GoReleaser zero out buildid for reproducible builds (#40) 2022-05-25 21:49:12 -07:00
Roy Lee
aef4e45bd7 [lbry] ci: add github workflows 2022-05-24 02:49:08 -07:00
Roy Lee
0375a6d38b [lbry] ci: support GoReleaser 2022-05-24 02:35:27 -07:00
Roy Lee
2cfa235a33 [lbry] ci: update Dockerfile
Use $ARCH/debian:bullseye-20220418-slim as base image
2022-05-24 00:47:34 -07:00
Roy Lee
7ee3d7d26b [lbry] ci: add .golangci-lint.yml 2022-05-24 00:47:34 -07:00
Roy Lee
d4cddda35c [lbry] ci: update gocelan.sh 2022-05-24 00:41:56 -07:00
Roy Lee
76e482bb73 [lbry] ci: remove release/release.sh 2022-05-24 00:39:44 -07:00
Roy Lee
badb894e3a [lbry] ci: update .gitignore 2022-05-24 00:39:44 -07:00
Roy Lee
3cb961257c [lbry] ci: fixed various lint errors 2022-05-24 00:39:44 -07:00
Roy Lee
bf7a513006 [lbry] go mod: update go modules 2022-05-24 00:04:19 -07:00
Roy Lee
7c5a2c6f58 [lbry] version: update codebase to use version package 2022-05-24 00:04:19 -07:00
Roy Lee
3662f316ab [lbry] version: add version package 2022-05-24 00:04:19 -07:00
Roy Lee
43d3086ce1 [lbry] mempool: update getrawmempool and implement getmempoolentry
TODO::
1. Populate Ancestor and decsendent related fields instead of mocking.
2. Move and refator the implementation of getmempoolentry to the mempool
   package.
2022-05-24 00:04:19 -07:00
Roy Lee
7513046f70 [lbry] fees: replace estimatefee with esimatesmartfee 2022-05-24 00:04:19 -07:00
Roy Lee
d126d0c10e [lbry] fees: port estimatesmartfee from DCRD
1. logger
2. blockheight: int64 -> int32
3. dcrutil -> lbcutl
4. MaxConfirimation: 42
5. MinBucketFee: mempool.MinRelayFee (default 1000)
6. BucketFee Spacing: 1.1 -> 1.05

Note:
  DCRD implementation of estimatesmartfee is based on bitcoin core 0.14
  Lbrycrd (0.17) includes the updates of bitcoin core 0.15.
  They are slightly different, but shouldn't matter much.
2022-05-24 00:04:19 -07:00
Roy Lee
324c443c64 [lbry] fees: initial import from DCRD
vendored https://github.com/decred/dcrd/tree/master/internal/fees

Commit of the last modification

    commit a6e205b88fbb44f7ee85be25a81f4dad155670d8
    Author: Dave Collins <davec@conformal.com>
    Date:   Sat Dec 26 12:17:48 2020 -0600

        fees: Remove deprecated DisableLog.
2022-05-24 00:04:19 -07:00
Roy Lee
d99883a620 [lbry] btcjson: take integers for boolean parameters.
This is for backward compatibility with lbrycrd/bitcoind where some clients
use intger values (0/1) for boolean.
2022-05-24 00:04:19 -07:00
Roy Lee
a7f971f404 [lbry] rpc: update getrawtransaction to take verbose as boolean 2022-05-24 00:04:19 -07:00
Jeffrey Picard
239d681f28 [lbry] contrib: add linode deployment using docker 2022-05-24 00:04:19 -07:00
Roy Lee
d35a82412f [lbry] align port settings between lbcd, lbcctl, and lbcwallet 2022-05-24 00:01:46 -07:00
Brannon King
2bd6e4c3a9 [lbry] ffldb: increase open file limit and flush more often 2022-05-24 00:01:46 -07:00
Brannon King
b4623ef2dd [lbry] increase open file limit to 2048 2022-05-24 00:01:46 -07:00
Brannon King
4dd4505706 [lbry] docs: update docs for LBRY
Co-authored-by: Roy Lee <roylee17@gmail.com>
2022-05-24 00:01:46 -07:00
Brannon King
1b823c055f [lbry] test: don't remove old regression DB 2022-05-24 00:01:46 -07:00
Brannon King
a07bb527df [lbry] test: fixed all current tests and delete three.
Co-authored-by: Roy Lee <roylee17@gmail.com>
2022-05-24 00:01:46 -07:00
Brannon King
d6a6b53551 [lbry] upnp: brought in upnp fix from dcrd 2022-05-24 00:01:46 -07:00