Commit Graph

3355 Commits

Author SHA1 Message Date
Łukasz Magiera
a5a0bd378e lpwindow: make gen 2023-10-25 21:13:56 +02:00
Łukasz Magiera
4fad50ad9a provider: Undo some hacks, move wdpost task to lpwindow pkg 2023-10-25 14:23:25 +02:00
Andrew Jackson (Ajax)
43680400c3 lp runs. todo ds-sectorInfo move & cleanups 2023-10-24 19:26:13 -05:00
Andrew Jackson (Ajax)
5b5ae80e30 renamed api config 2023-10-19 18:19:42 -05:00
Andrew Jackson (Ajax)
6695a2d936 why does proxygen crash 2023-10-18 16:47:00 -05:00
Andrew Jackson (Ajax)
e548b46dbf lotus-provider-in-progress 2023-10-16 10:28:58 -05:00
Aayush
5e76b05b17 Merge branch 'feat/nv21' into asr/merge-feat-nv21 2023-10-16 11:13:33 -04:00
Andrew Jackson (Ajax)
1f1e840e5c Merge branch 'feat/wdpost-adder' into wdpost-can-accept 2023-10-11 17:51:46 -05:00
Andrew Jackson (Ajax)
598e9b931d Merge branch 'feat/wdpost-adder' into wdpost-can-accept 2023-10-06 11:48:04 -05:00
Shrenuj Bansal
f01096bca3 wip 2023-10-05 11:52:22 -04:00
Andrew Jackson (Ajax)
6376001a50 config PR changes 2023-10-02 17:08:42 -05:00
Jie Hou
5e1e426882 Add really-do-it 2023-10-02 16:56:56 -07:00
Jie Hou
0a25e90dc8 WIP: Able to make call
WIP: further improve

CHANGELOG

Go mod switch dependency
2023-10-02 16:56:56 -07:00
Andrew Jackson (Ajax)
4bcbc15a40 aliases 2023-09-29 13:05:51 -05:00
Andrew Jackson (Ajax)
ea035f4a7f lint, db timout, cfg rm 2023-09-29 11:56:10 -05:00
Friðrik Ásmundsson
3fd57ff7d9
Merge pull request #11270 from filecoin-project/benchmark-binaries
feat: Add lotus-bench cli option to stress test any binary
2023-09-28 10:15:06 +00:00
Fridrik Asmundsson
5b394f0f98 small fixes 2023-09-27 14:06:26 +00:00
Andrew Jackson (Ajax)
545329311f lp config after testing 2023-09-26 22:06:00 -05:00
Phi
f1c70720df Handle both IPv4 and IPv6
use net.JoinHostPort(minerIP, minerPort) to handle both IPv4 and IPv6 addresses.
2023-09-25 14:38:59 +02:00
Phi
3f2d2eb659 Connect to newAddress
Connect to newAddress
2023-09-25 14:38:59 +02:00
Steven Allen
c6debaadf0 make gen 2023-09-23 17:54:44 -04:00
Aayush
04ebd5177c refactor: GetMaxSectorExpirationExtension depends on network version 2023-09-23 14:09:25 -04:00
Andrew Jackson (Ajax)
25c3b1732e Merge branch 'feat/sturdypost' into lotus_provider_config 2023-09-22 11:38:03 -05:00
Andrew Jackson (Ajax)
a520ee85d6 master-to-sturdy 2023-09-21 10:37:02 -05:00
Jie Hou
5b9914790c Fix lint 2023-09-21 02:15:26 -07:00
Andrew Jackson (Ajax)
403c6e23e1 lotusprovider docsgen2 2023-09-20 16:17:51 -05:00
Shrenuj Bansal
00b3335765 wip 2023-09-20 15:59:58 -04:00
Andrew Jackson (Ajax)
144bc9fcea lint for config pr 2023-09-20 12:58:56 -05:00
Jie Hou
10a9eb2155 Address review comments 2023-09-20 09:33:53 -07:00
Andrew Jackson (Ajax)
a377033d22 config 2023-09-19 22:48:39 -05:00
Jie Hou
00335441ce Auto remove existing chain if importing chain file or snapshot 2023-09-19 11:24:12 -07:00
Łukasz Magiera
01de96d230 fix lint 2023-09-19 12:12:04 +02:00
Aayush Rajasekaran
89a0b25377
Merge pull request #11271 from filecoin-project/fix/unsealing-print
fix: cli: Add print to unseal cmd
2023-09-18 11:55:07 -04:00
Phi
6892c35aec Add print to unseal cmd
Add print to unseal cmd
2023-09-15 09:22:18 +08:00
Fridrik Asmundsson
861731ee7c Add support to easily benchmark binary for understanding their latencies/histogram 2023-09-14 14:17:42 +00:00
Phi
024dd5e08e Merge branch 'feat/nv21' into feat/implement-SyntheticPoRep 2023-09-08 16:41:39 +02:00
Phi
d771aa353e Update comment
Update comment
2023-09-07 11:27:28 +02:00
Phi
7c61e890c5 Add timing in miner-select-messages
Add timing in `lotus-shed mpool miner-select-messages` cmd. And printing amount of message in the mpool
2023-09-07 11:19:10 +02:00
Mikers
5e5a81bf23
add go linter - "unused" (#11235)
* add go linter - "unused"

* use _ to name unused but needed padding variable

* remove unused code

* add queue test to appease unused linter

* remove unused code in test

* remove unused func

* remove unused struct identified by linter

* remove unused variable

* remove unused code

* remove unused file

* remove unused struct

* remove unused function

* remove unused observe peers function in raft

* remove unused declareFaults function

* annotate nolint:unused on needed methods
2023-09-05 12:19:43 -10:00
Andrew Jackson (Ajax)
70895afa3e
Merge pull request #11011 from filecoin-project/fix/snap-unseal
Snapdeals unsealing fixes
2023-09-05 10:25:34 -05:00
Łukasz Magiera
e74eb6af09 make the linter happy 2023-08-31 09:46:10 -04:00
Andrew Jackson (Ajax)
13b50ce6c8 lotus-provider without rpc endpoint 2023-08-30 15:57:20 -05:00
Phi
f3da600b28 Make lint-happy
Make lint-happy
2023-08-30 11:32:20 +02:00
Phi
20fe979857 Check if DC_[SectorSize]_[ResourceRestriction] is set
Check if DC_[SectorSize]_[ResourceRestriction] is set and convert to DC_[ResourceRestriction] to make sure its enforced by the scheduler.
2023-08-30 11:14:13 +02:00
Andrew Jackson (Ajax)
5c00f8d66e lotus-provider fixes 2023-08-29 23:16:05 -05:00
Łukasz Magiera
4ee20965fa chore: chain/actors: Use type proxies instead of versioned GST imports 2023-08-29 15:28:16 +02:00
Andrew Jackson (Ajax)
0a2fd96b9e lotus-provider lint-happy1 2023-08-28 11:37:36 -05:00
Andrew Jackson (Ajax)
5fc3111da2 lotus-provider test cleanups 2023-08-25 22:25:19 -05:00
Andrew Jackson (Ajax)
f397126f6c gin and updates 2023-08-25 22:07:17 -05:00
Andrew Jackson (Ajax)
1e2a16bd8a Merge branch 'feat/sturdypost' into feat/lotus-provider 2023-08-25 18:18:42 -05:00
Andrew Jackson (Ajax)
ca4282d149 lotus-provider: review comments 2023-08-25 18:17:31 -05:00
Andrew Jackson (Ajax)
535423a1f4 lotus-provider before harmonytask 2023-08-23 18:57:34 -05:00
Aayush
5a901b5eb6 fix tvx 2023-08-22 13:17:31 -04:00
Aayush
89f66dde93 refactor: move vm.Rand to rand.Rand 2023-08-22 12:32:43 -04:00
Aayush Rajasekaran
7491956197
Merge pull request #11167 from filecoin-project/asr/randomness
feat: refactor: return randomness base to FVM without hashing
2023-08-22 12:15:24 -04:00
Aayush
2f113e58ca fix tvx 2023-08-22 12:03:26 -04:00
Aayush
7e6ed09628 refactor: move vm.Rand to rand.Rand 2023-08-22 11:34:28 -04:00
Phi
825064669d Continue if msg not found on-chain
Continue if msg not found on-chain
2023-08-22 10:56:50 +02:00
Phi
e1ed24ddd0 Put exec-trace behind flag
Put exec-trace behind flag
2023-08-21 13:55:49 +02:00
Phi
539a524271 Make exec-trace human readable
Make exec-trace human readable
2023-08-20 20:11:27 +02:00
Phi
c1231125e9 Print receipt
Print receipt
2023-08-20 19:54:17 +02:00
Phi
925498f938 Add exec-trace and receipt
Add exec-trace and receipt to the lotus-shed msg command
2023-08-20 10:06:00 +02:00
Łukasz Magiera
22f490132e
Merge pull request #11141 from filecoin-project/fix/worker-IPv6
fix: worker: Support IPv6 formatted API-keys
2023-08-16 15:55:05 +02:00
Shrenuj Bansal
d746d6e6df make more lint more happy hopefully 2023-08-14 11:35:18 -04:00
Aayush
20e831b9ea refactor: drop unused param from IsRoundWinner 2023-08-11 09:48:09 -04:00
Shrenuj Bansal
652ee04ce2 working changes 2023-08-08 20:59:21 -04:00
Phi
94e48ae860 Add IPv6 check and format appropriately
Add IPv6 check and format appropriately
2023-08-08 13:18:36 +02:00
Phi
c4798a604a Make lint happy
Address the errcheck lint error by checking the return from conn.Close()
2023-08-08 12:49:04 +02:00
Phi
b6ba3b23bb fix: worker: Support IPv6
Add support for IPv6 in MINER_API_INFO env.
2023-08-08 12:21:59 +02:00
Shrenuj Bansal
864e8219ae WIP: sector index yugabyte impl 2023-08-05 16:15:23 -04:00
Mikers
4f0e2f3276 Added CPU profiling option to lotus-shed
This commit includes the following updates:

- Added a new 'pprof' flag to the command-line arguments in main.go. This flag allows the user to specify a file name for writing CPU profile information, enabling performance analysis.

- Implemented functionality to start CPU profiling in the 'Before' function. If a file name is provided via the 'pprof' flag, the function creates the specified file and begins CPU profiling.

- Added an 'After' function to stop CPU profiling once the program execution is finished.

These changes provide a way to analyze the CPU usage of the 'lotus-shed' application, which can be valuable for performance tuning and optimization.
2023-08-02 01:20:06 +00:00
Mikers
1eca520076 Added support for Filecoin network version 21 (v12 state types)
This commit includes the following updates:

- Imported v12 of the filecoin state types in migrations.go. This allows the system to interpret and operate on the latest structure of filecoin state information, ensuring compatibility with the latest version of the Filecoin network.

- Updated the 'getMigrationFuncsForNetwork' function to include a case for network.Version21, enabling the use of the UpgradeActorsV12 and PreUpgradeActorsV12 functions for network migration. These changes ensure the system correctly handles migrations when the network upgrades to version 21.

- Implemented a new 'checkNv21Invariants' function to check the invariants for version 21 of the Filecoin network. This function:

  1. Loads the new state root from the actor store.
  2. Retrieves the actor code IDs for the current state version (v12).
  3. Loads the actor tree from the state root and checks state invariants using the actor code IDs.
  4. Logs any error messages generated during the invariant check.
  5. Finally, prints a message with the time taken to complete the checks.

By checking these invariants, we can ensure the system's state is consistent and valid after migrating to network version 21.
2023-08-01 14:23:55 -10:00
Łukasz Magiera
fbac220208 feat: chain node: Move consensus slasher to internal service 2023-08-01 12:06:18 -04:00
Aayush
50a86f2161 feat: improvements to the consensus slasher 2023-08-01 12:05:06 -04:00
Aayush
0f6207a755 feat: slasher: print error on failure 2023-08-01 12:04:57 -04:00
Łukasz Magiera
fe7cf0c39a feat: chain node: Move consensus slasher to internal service 2023-08-01 17:34:44 +02:00
ZenGround0
d900acc506
Merge pull request #11078 from filecoin-project/shed/zip-partition-info
feat:shed:gather partition metadata
2023-07-31 18:18:16 -04:00
zenground0
482c90412d Lint 2023-07-31 11:12:56 -06:00
zenground0
6a07def34a gen 2023-07-31 10:53:07 -06:00
Fridrik Asmundsson
719215122b Address PR feedback and move each epoch inside own tx 2023-07-24 14:18:31 +00:00
Fridrik Asmundsson
8a5950b3e9 Add new lotus-shed command for backfillling actor events 2023-07-24 11:37:30 +00:00
zenground0
df17f709a4 Record faulty status of sectors 2023-07-21 13:07:25 -06:00
zenground0
8c4e705df3 Count all precommit sector numbers that we are checking 2023-07-21 09:30:45 -06:00
zenground0
2776e29042 Gather info about overhead operations in deadline summary 2023-07-21 08:53:24 -06:00
ZenGround0
15faab8412
Merge pull request #11075 from filecoin-project/bench/amt-churn
feat:lotus-bench:AMT benchmarking
2023-07-20 19:27:27 -04:00
zenground0
4d8f8d2600 Review Response 2023-07-20 16:59:11 -06:00
Phi-rjan
9624dc53f8
Merge pull request #11032 from filecoin-project/feat/remove-existing-chain 2023-07-20 18:41:25 +02:00
Aayush Rajasekaran
2ddb52e103
feat: daemon: import: only setup stmgr if validating chain (#11084) 2023-07-18 08:03:34 -10:00
Łukasz Magiera
7adf8237f6 add synthPoRep support to bench simple 2023-07-18 10:27:40 -07:00
Aayush
09b566dde1 fix: daemon: set real beacon schedule when importing chain 2023-07-17 09:36:41 -04:00
zenground0
38b21a713a Lint 2023-07-13 08:41:34 -06:00
Andrew Jackson (Ajax)
1a799aec37 fixes 2023-07-13 15:48:08 +02:00
Andrew Jackson (Ajax)
7f306a5b02 Synthetic PoRep Impl 2023-07-13 15:47:59 +02:00
Andrew Jackson (Ajax)
08038540e4 Impl synthPoRep 2023-07-13 15:47:59 +02:00
Andrew Jackson (Ajax)
b43665a3c1 synthPoRep in PreferredSeal..() 2023-07-13 15:47:58 +02:00
zenground0
6eadc0ee57 gen 2023-07-13 07:37:51 -06:00
zenground0
eaf0200fe1 amt bench in good state 2023-07-12 23:58:02 -06:00
mx
e9f57ae77f feat: daemon: improvemens to the consensus slasher 2023-07-11 16:40:28 +08:00
zenground0
9bd0e9ed58 Fix classic bug 2023-07-10 16:32:37 -06:00
zenground0
3f4429a5ef match json parsing 2023-07-10 16:00:03 -06:00
zenground0
921bdb85ab correct json parsing of addr 2023-07-10 15:54:07 -06:00
zenground0
921e5520ea debug 2023-07-10 15:32:19 -06:00
zenground0
cff7716707 Tool for measuring partition summaries 2023-07-10 15:28:14 -06:00
Aayush
4bc032430b feat: slasher: improve UX 2023-07-08 13:40:38 -04:00
Aayush
7180b52d2c feat: improvements to the consensus slasher 2023-07-08 11:21:35 -04:00
Aayush
4cfdf8e83c feat: slasher: print error on failure 2023-07-08 11:14:41 -04:00
ZenGround0
1358d70128
Merge pull request #11012 from filecoin-project/feat/stat-snapshot
feat:profiling:state summary and visualization
2023-07-06 16:28:05 -04:00
Łukasz Magiera
e30f8af2d1 make gen 2023-07-06 09:35:10 +02:00
Phi
2061c32a2e Check error
Check error
2023-07-04 11:53:28 +02:00
Phi
dedfa143ce Extract removeExistingChain to seperate func
Extract removeExistingChain to seperate func
2023-07-04 11:30:06 +02:00
Phi
13224e3e0b Remove unused function
Remove unused clearSplitStoreDir function
2023-07-04 11:07:50 +02:00
Łukasz Magiera
7b21420831 feat: shed: command for decoding block headers 2023-06-30 14:24:07 +02:00
Phi
5201744199 feat: snapshot: remove existing chain
Remove existing chain on a snapshot-import

log info instead of print

log info instead of print

Remove defer lock

Remove defer lock, and explicitly close the lockedRepo instead
2023-06-30 14:14:16 +02:00
zenground0
ab72f2e230 Lint 2023-06-28 22:35:28 -06:00
mike seiler
a1bfdfbc04 Refactor state invariant checks for different actor versions
This commit refactors the code in `invariants.go` to support state invariant checks for different actor versions. The code now includes checks for versions 10 and 11 of the actors. The `CheckStateInvariants` function is invoked based on the actor version, passing the appropriate parameters. This change ensures that state invariant checks are performed correctly for different actor versions.

The changes made are as follows:
- Added imports for actor versions 10 and 11.
- Added `case` statements for versions 10 and 11 in the switch statement.
- Invoked `CheckStateInvariants` function with the correct parameters for each version.
- Handled errors returned by the `CheckStateInvariants` function.

These changes enhance the flexibility and compatibility of the code with different actor versions, improving the accuracy of state invariant checks.
2023-06-28 12:50:15 -07:00
zenground0
d2b2fba799 Remove debug pprof serving 2023-06-28 10:11:47 -06:00
zenground0
3cacbdfa18 Lint fixes 2023-06-28 09:52:47 -06:00
zenground0
016661b657 More cleanup 2023-06-28 09:17:57 -06:00
zenground0
3897bf14d1 Cleanup 2023-06-28 09:15:38 -06:00
zenground0
0cfdc9b5b6 Refactor for cleanup + measure top level HAMT churn 2023-06-27 17:57:00 -06:00
zenground0
77ea7ef90d Tweak path stuff 2023-06-27 11:29:14 -06:00
zenground0
4aa977f119 Touch up pathing 2023-06-27 11:00:20 -06:00
zenground0
8f3123d75b Churn json output is working 2023-06-27 00:54:02 -06:00
zenground0
36a88f45fc Output is buggy but halfway there 2023-06-25 17:36:21 -06:00
zenground0
d599833b64 WIP 2023-06-25 15:55:41 -06:00
Jorropo
6c01310728
chore: migrate to boxo
This migrates everything except the `go-car` librairy: https://github.com/ipfs/boxo/issues/218#issuecomment-1529922103

I didn't migrated everything in the previous release because all the boxo code wasn't compatible with the go-ipld-prime one due to a an in flight (/ aftermath) revert of github.com/ipfs/go-block-format. go-block-format has been unmigrated since slight bellow absolutely everything depends on it that would have required everything to be moved on boxo or everything to optin into using boxo which were all deal breakers for different groups.

This worked fine because lotus's codebase could live hapely on the first multirepo setup however boost is now trying to use boxo's code with lotus's (still on multirepo) setup: https://filecoinproject.slack.com/archives/C03AQ3QAUG1/p1685022344779649

The alternative would be for boost to write shim types which just forward calls and return with the different interface definitions.

Btw why is that an issue in the first place is because unlike what go's duck typing model suggest interfaces are not transparent https://github.com/golang/go/issues/58112, interfaces are strongly typed but they have implicit narrowing. The issue is if you return an interface from an interface Go does not have a function definition to insert the implicit conversion thus instead the type checker complains you are not returning the right type.

Stubbing types were reverted https://github.com/ipfs/boxo/issues/218#issuecomment-1478650351

Last time I only migrated `go-bitswap` to `boxo/bitswap` because of the security issues and because we never had the interface return an interface problem (we had concrete wrappers where the implicit conversion took place).
2023-06-19 14:45:05 -07:00
mx
36b5f485cd Merge branch 'slashfilter' of https://github.com/storswiftlabs/lotus into slashfilter 2023-06-09 10:18:45 +08:00
mx
2fca475dd4 fix: supply extra params for ReportConsensusFaultParams 2023-06-09 10:15:14 +08:00
swift-mx
e3c796c848
Merge branch 'master' into slashfilter 2023-06-08 18:56:49 +08:00
mx
16b9787db9 fix: handle the parent-grinding mining fault 2023-06-08 18:49:39 +08:00
Fridrik Asmundsson
4d90d0475f Upgrade urfave dependency which now supports DisableSliceFlagSeparator flag 2023-06-07 15:47:58 -05:00
Friðrik Ásmundsson
9e4f1a4d23
Add new lotus-shed command for computing eth hash for a given message cid (#10961) 2023-06-06 17:53:04 -05:00
Fridrik Asmundsson
26b4866841 Move back to lotus-shed and add subcategory for indexes 2023-06-03 12:22:25 -05:00
Fridrik Asmundsson
9240776237 fix: improve perf of msgindex backfill 2023-06-01 14:36:05 +00:00
swift-mx
2fd8602c5a
Merge branch 'master' into slashfilter 2023-05-31 10:02:01 +08:00
Łukasz Magiera
6cc506f5cf
Merge pull request #10923 from filecoin-project/feat/sectors-upgradebounds-cli
feat: miner cli: sectors list upgrade-bounds tool
2023-05-30 20:34:38 +02:00
Łukasz Magiera
120502408c
Merge pull request #10761 from filecoin-project/10752-bench-rpc
Add new RPC stress testing tool (lotus-bench rpc) with rich reporting
2023-05-30 19:37:38 +02:00
Łukasz Magiera
96fa081ca6
Merge pull request #10913 from filecoin-project/feat/piecereader-perf
feat: piecereader: Allow parallel access
2023-05-30 18:49:41 +02:00
swift-mx
42aa8451f8
fix: error log
Co-authored-by: Aayush Rajasekaran <arajasek94@gmail.com>
2023-05-30 23:54:07 +08:00
huangxinheng@storswift.com
d365f7b0a1 fix: docs gen 2023-05-30 07:01:24 +00:00
mx
425661772d style:Refactoring slashfilter 2023-05-30 14:33:35 +08:00
Aayush
c0942ebc2c feat: cli: Make compact partitions cmd better 2023-05-29 13:06:25 -04:00
Fridrik Asmundsson
e1b69f84d6 Cleanup after removing urface upgrade 2023-05-27 10:55:10 +00:00
Fridrik Asmundsson
b563a36a99 Address review comments 2023-05-27 10:55:10 +00:00
Fridrik Asmundsson
4b0ca30daf Add --watch option to see progress while benchmark is running 2023-05-27 10:55:10 +00:00
Fridrik Asmundsson
dcc72a43ee Also report on json errors (not only http errors) 2023-05-27 10:55:10 +00:00
Fridrik Asmundsson
d0e9502bfe small fixes 2023-05-27 10:55:10 +00:00
Fridrik Asmundsson
78d7ccd391 Add new RPC stress testing tool (lotus-bench rpc) with rich reporting
This benchmark is designed to stress test the rpc methods of a lotus node so that we can simulate real world usage and measure the performance of rpc methods on the node.

This benchmark has the following features:
* Can query each method both sequentially and concurrently
* Supports rate limiting
* Can query multiple different endpoints at once (supporting different concurrency level and rate limiting for each method)
* Gives a nice reporting summary of the stress testing of each method (including latency distribution, histogram and more)
* Easy to use

To use this benchmark you must specify the rpc methods you want to test using the --method options, the format of it is:

  --method=NAME[:CONCURRENCY][:QPS][:PARAMS] where only METHOD is required.

Here are some real examples:
  lotus-bench rpc --method='eth_chainId' // run eth_chainId with default concurrency and qps
  lotus-bench rpc --method='eth_chainId:3'  // override concurrency to 3
  lotus-bench rpc --method='eth_chainId::100' // override to 100 qps while using default concurrency
  lotus-bench rpc --method='eth_chainId:3:100' // run using 3 workers but limit to 100 qps
  lotus-bench rpc --method='eth_getTransactionCount:::["0xd4c70007F3F502f212c7e6794b94C06F36173B36", "latest"]' // run using optional params while using default concurrency and qps
  lotus-bench rpc --method='eth_chainId' --method='eth_getTransactionCount:10:0:["0xd4c70007F3F502f212c7e6794b94C06F36173B36", "latest"]' // run multiple methods at once`,

Fixes: https://github.com/filecoin-project/lotus/issues/10752
2023-05-27 10:55:10 +00:00
Friðrik Ásmundsson
b269a1ba35
Merge pull request #10877 from filecoin-project/lotus-shed-cancel-context
feat: run lotus-shed commands in context that is cancelled on sigterm
2023-05-27 10:30:52 +00:00
Fridrik Asmundsson
a4c94957e6 Update message when user hits CRTL+C to not imply handling SIGSTOP but SIGTERM/SIGKILL 2023-05-27 10:10:30 +00:00