Commit Graph

653 Commits

Author SHA1 Message Date
Jakub Sztandera
ff5ff4d294
Add multiple drand configs
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-23 18:45:08 +02:00
Łukasz Magiera
d70edbcb7c Set things on syscallShim 2020-07-22 13:35:10 -04:00
Raúl Kripalani
d6e6eedd58 pipe sealing events to the journal. 2020-07-21 13:02:51 +01:00
Raúl Kripalani
7459ec6bba add mpool journal events; fix dependency injection. 2020-07-20 16:37:32 +01:00
Raúl Kripalani
226786c1da wip 2020-07-20 14:45:17 +01:00
Raúl Kripalani
4d2d8b2d11 Merge branch 'next' into inmem-journal 2020-07-20 10:38:58 +01:00
Łukasz Magiera
d266c665b0 Update sector-storage with windowed scheduler 2020-07-18 00:38:02 +02:00
Jakub Sztandera
cc1d23a94c
Use single multi ds
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-07-17 22:14:37 +02:00
Raúl Kripalani
becbff0b13 add NilJournal; fix call sites to ChainStore constructor. 2020-07-17 19:10:47 +01:00
Raúl Kripalani
695f6cfe45 wip in-memory journal. 2020-07-17 14:34:42 +01:00
Aayush Rajasekaran
a5ef629cef Add expected seal duration to custom deal logic, reject deals that start too early 2020-07-15 17:31:50 -04:00
hannahhoward
61f120222f feat(markets): update markets with new retrieval 2020-07-15 14:04:31 -07:00
Łukasz Magiera
0f2043d874
Merge pull request #2317 from filcloud/issue-2304
fix issue 2304: ux improvements
2020-07-15 19:38:35 +02:00
Frank
14ec9a2068 update storage miner and seal worker document 2020-07-11 16:55:13 +08:00
Raúl Kripalani
13de81b3b2 introduce the ability to mock time. 2020-07-10 15:51:45 +01:00
Łukasz Magiera
66237415c5 Merge remote-tracking branch 'origin/next' into feat/client-multi-bstore 2020-07-08 22:48:47 +02:00
Łukasz Magiera
2b9c05d395 Merge remote-tracking branch 'origin/next' into feat/upgrade-markets-0.4.0 2020-07-08 15:53:55 +02:00
Łukasz Magiera
b049c5a7d1 Merge remote-tracking branch 'origin/master' into next 2020-07-08 14:35:40 +02:00
Łukasz Magiera
ba0f7d703e Set lower polling interval for deal client 2020-07-08 12:52:37 +02:00
hannahhoward
24e3a4218b feat(markets): upgrade to latest
upgrade to latest markets with fast retrieval, underlying data transfer upgrade
2020-07-08 01:35:50 -07:00
Aayush Rajasekaran
411c82ae8f Update storage-FSM, add API to set sector seal delay 2020-07-07 15:23:23 -04:00
Łukasz Magiera
55f089d997 client: Unbreak retrieval 2020-07-07 14:35:02 +02:00
Łukasz Magiera
47f0898ce9 Wire up client import manager 2020-07-07 10:52:19 +02:00
Łukasz Magiera
8942967223 Client Import manager 2020-07-07 10:52:04 +02:00
whyrusleeping
42bd4eccbe implement a persistent journal for lotus node operations 2020-07-06 09:42:00 -07:00
whyrusleeping
ffd012906c add peer ID to hello protocol failure log 2020-07-01 16:20:05 -07:00
Łukasz Magiera
8f0e04027e
Merge pull request #2154 from laser/feat/1920-selection-commands
implement toggling of online/offline storage/retrieval deals
2020-07-01 11:06:32 +02:00
Raúl Kripalani
4f9c907248 rename build.{BlockDelay=>BlockDelaySecs}.
Since this global is not typed as a time.Duration,
rather as an int, it makes sense to clarify the unit.
2020-06-30 14:26:49 +01:00
Raúl Kripalani
0fddf3e114 make system constants configurable as vars.
This configurability is unlocked through the `testground`
build tag, which Project Oni will uses.

Changes in the usage places of these relaxed constants
were required due to the fact that Golang constants are
untyped, but vars aren't.

Read https://blog.golang.org/constants for more info.
2020-06-30 14:18:26 +01:00
Travis Person
12f10ac414 lotus-shed: organize peer key generate and other key commands under keyinfo 2020-06-29 20:07:39 +00:00
laser
b9180a99d4 toggle consideration of offline storage/retrieval deal proposals 2020-06-26 12:27:41 -07:00
laser
e910a045d0 big rename to allow for later introducing the "consider offline" config 2020-06-26 10:50:54 -07:00
laser
4c760ec1b1 lint: update comments to match type declarations 2020-06-24 08:08:10 -07:00
laser
ef0abf2b98 disable/enable retrieval deal consideration via config 2020-06-24 08:07:12 -07:00
Yusef Napora
5074cf8beb import DrandConfig from dtypes 2020-06-23 16:23:06 -04:00
Yusef Napora
b448de422e improve DrandConfig dependency injection 2020-06-23 16:01:10 -04:00
Yusef Napora
628872d0e4 forgot my go fmt hook 2020-06-23 15:10:27 -04:00
Yusef Napora
566a99240d allow overriding drand config 2020-06-23 13:33:18 -04:00
Raúl Kripalani
d20255b1b4 provide an option to disable loading of built-in assets. 2020-06-22 19:42:04 +01:00
laser
fbeaab466a obey the linter 2020-06-19 09:20:20 -07:00
laser
de7d6c255c blacklist -> blocklist 2020-06-18 15:51:01 -07:00
laser
0c8d648998 specify which CID is being blacklisted (it's the piece) 2020-06-18 14:02:22 -07:00
laser
aa18d1985e reject storage deal proposals containing blacklisted piece CIDs 2020-06-18 13:32:20 -07:00
laser
b0edf924b4 add commands for manipulating storage deal CID blacklist 2020-06-18 13:15:18 -07:00
hannahhoward
9262661135 chore(deps): update to fil-markets 0.3.0
Updates to latest fil markets with resumability and other fixes
2020-06-15 15:43:47 -07:00
laser
36b327b57b various symbol renames 2020-06-11 13:18:18 -07:00
laser
7587e6c08b get and set storage deal acceptance through CLI 2020-06-11 12:59:50 -07:00
laser
5421d0d1c5 better field and struct names + set default appropriately
Storage miners, by default, should be configured to accept storage deals.
2020-06-11 12:15:28 -07:00
laser
c458b4712a better rejection messages 2020-06-11 12:06:38 -07:00
laser
d6b2519843 config-driven IsAcceptingStorageDeals flag
Makes incremental progress towards #1920.
2020-06-11 11:29:59 -07:00
Jakub Sztandera
7762cd0a68
Assign positive scores to drand bootstrappers
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-08 11:34:46 +02:00
Jakub Sztandera
e91cc9cd08
Add drand topic scores
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-08 11:34:46 +02:00
Łukasz Magiera
163c2b2544 Merge remote-tracking branch 'origin/master' into next 2020-06-06 00:58:24 +02:00
laser
4855045ea2 pass context to paramfetch.GetParams
Fixes #1209
2020-06-05 10:28:00 -07:00
Jakub Sztandera
7bee5b3abc
Merge remote-tracking branch 'origin/master' into next
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-05 00:33:43 +02:00
vyzo
f210a6e91a pubsub: set Dout parameter to 3 (from the default of 2)
we are using a higher D value than the default, so this can be safely increased.
2020-06-04 00:03:31 +03:00
Jakub Sztandera
7f962e19c2
Fix lint
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-03 03:19:18 +02:00
Jakub Sztandera
186fd4da74
Add lotus net scores for pubsub score visibility
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-06-03 03:13:49 +02:00
laser
bea9cd2fe2 rename to better convey intent + document 2020-06-02 12:35:11 -07:00
laser
38d714a28a first take at "daemon stop" command
Fixes #1827

TODO: plumb the daemon-stopping into lotus-storage-miner, too
2020-06-02 12:29:58 -07:00
Łukasz Magiera
64f4e80446 Include build type in version 2020-06-01 20:49:39 +02:00
Łukasz Magiera
c73326e96d fsrepo: Use LevelDB for metadata datastore 2020-06-01 20:13:07 +02:00
Łukasz Magiera
7003960fdd Merge remote-tracking branch 'origin/master' into next 2020-06-01 18:52:06 +02:00
Jakub Sztandera
241c3fa673
Merge pull request #1869 from filecoin-project/feat/drand-pubsub
Add pubsub support to drand beacon
2020-05-29 18:06:38 +02:00
Łukasz Magiera
785eeb1eee
Merge pull request #1850 from filecoin-project/chore/lint
Cleanup many lint warnings
2020-05-29 18:06:06 +02:00
Jakub Sztandera
002d021eb7
Enable HashMsgId
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-29 17:55:24 +02:00
Jakub Sztandera
71eb41b9aa
Add pubsub support to drand beacon
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-29 17:55:17 +02:00
hannahhoward
0c4db8cf6b fix(storageminer): add missing err check
Missing an err check in storage miner initialization in the stored ask
2020-05-28 17:05:17 -07:00
Ignacio Hagopian
17c378c18a fix
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2020-05-28 22:11:49 +02:00
Ignacio Hagopian
0af7cd1448 allow using ipfs for retrieval
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2020-05-28 22:11:49 +02:00
Ignacio Hagopian
de3edc2ec7 remote ipfs support & automatic env
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2020-05-28 22:11:49 +02:00
Jakub Sztandera
b372881e91
Fix more lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-28 01:15:19 +02:00
Jakub Sztandera
d6615b6286
Cleanup many lint warnings
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-27 22:53:20 +02:00
Jakub Sztandera
4604b60fb1
Remove drand on miner side, MinerGetBaseInfo provides the same info
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-05-27 20:24:26 +02:00
Ignacio Hagopian
009cd92010
fix
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2020-05-27 09:50:32 -03:00
Ignacio Hagopian
61daaa774b
allow using ipfs for retrieval
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2020-05-26 14:52:52 -03:00
Ignacio Hagopian
d5346f8326
remote ipfs support & automatic env
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2020-05-26 14:52:51 -03:00
vyzo
314da26da3 unconditionally disable relay 2020-05-25 13:39:50 +03:00
vyzo
5531f27798 sink the FirstMessageDeliveries boost for the messages topic 2020-05-22 17:25:56 +03:00
Whyrusleeping
83436842c5
Merge pull request #1802 from filecoin-project/feat/gfm-v0.2.7
Use latest go-fil-markets
2020-05-21 10:05:54 -07:00
vyzo
d597c3fb0d increase OpportunisticGraftThreshold to 5 2020-05-21 14:38:11 +03:00
vyzo
0cc8446a79 configure Dout=0 for bootstrappers, turn off Mesh Failure Penalty for messages as well 2020-05-21 12:11:22 +03:00
hannahhoward
3264a9faad feat(deps): update to latest go-fil-markets
update to go-fil-markets v0.2.7 with latest changes, modify constructors as needed to accomodate new
DS Prefix customization
2020-05-20 16:01:03 -07:00
shannonwells
652c257763 passing w/ new namespace wraps 2020-05-20 15:58:59 -07:00
shannonwells
e68ab286f6 upgrade lotus to go-fil-markets v0.2.5 2020-05-20 15:56:58 -07:00
Łukasz Magiera
f7325a69c1 Extract auth utils to go-jsonrpc 2020-05-20 20:37:45 +02:00
Łukasz Magiera
ae60001dcc post: Handle Recovering sectors 2020-05-20 18:41:20 +02:00
Łukasz Magiera
cea7c41023
Merge pull request #1761 from dtynn/fix/dtynn/use_abs_path_for_client_filestore
use abs path to construct FileManager
2020-05-20 12:49:53 +02:00
Łukasz Magiera
0fe7a0b2e3
Merge pull request #1764 from filecoin-project/feat/has-cache-bs
add blockstore 'Has' caching
2020-05-20 12:48:50 +02:00
Jeromy
607bcc401c very basic api documentation autogeneration 2020-05-18 17:20:54 -07:00
Jeromy
9804bd3c4c add blockstore 'Has' caching 2020-05-16 11:31:14 -07:00
dtynn
30e2642f4d use abs path to construct FileManager 2020-05-16 09:36:38 +08:00
Whyrusleeping
70657e35ba
Merge pull request #1708 from filecoin-project/feat/block-validator
Improved pubsub block validator
2020-05-15 11:26:26 -07:00
vyzo
dbe2a1e2cd turn off Mesh Delivery Failure penalty 2020-05-15 12:50:20 +03:00
vyzo
6e0dac06f4 utility to retrieve miner worker key from the chain 2020-05-14 20:48:19 +03:00
vyzo
5bd0e92068 remove source flagging from bogus CID blocks
it's ineffective.
2020-05-14 20:48:19 +03:00
vyzo
b032d3524b configure behaviour penalty for gsv1.1 2020-05-14 20:48:19 +03:00
Jeromy
d3eb808ff4 add profile for bootstrappers 2020-05-14 09:27:07 -07:00
Łukasz Magiera
e8d92a5f31 node: Use correct network name for DHT 2020-05-12 19:38:04 +02:00
hannahhoward
581e7e6fde chore(deps): update to fil-markets 0.2.1
Update fil-markets to 0.2.1 that no longer keeps streams open
2020-05-08 14:11:40 -07:00
Łukasz Magiera
523a7a9d8d Merge pull request #1670 from filecoin-project/feat/update-markets-0.2.0
Update go-fil-markets
2020-05-06 01:45:33 +02:00
Łukasz Magiera
60b78a74f7 Merge pull request #1676 from filecoin-project/cleanup/multi-addr-miner
block producers should have only one address
2020-05-05 22:12:32 +02:00
Jeromy
8b58f22c2e block producers should have only one address 2020-05-05 12:01:44 -07:00
vyzo
eb24baa70c use go-libp2p-core/peer instead of the deprecated alias, try to pacify the silly linter 2020-05-05 17:26:59 +03:00
vyzo
4e5179557d flag block source when messages cannot be retrieved 2020-05-05 16:49:43 +03:00
hannahhoward
a9866c757e feat(deps): update go-fil-markets
Update to latest 0.2.0 release of go-fil-markets with less-blocking node io
2020-05-04 18:36:51 -07:00
vyzo
e3f6e586ee use blake2b hash as the message ID function 2020-05-04 19:34:30 +03:00
vyzo
805d07bca6 turn off the mesh in bootstrappers 2020-05-04 19:04:24 +03:00
vyzo
112aca7896 pubsub-specific configuration 2020-05-04 18:30:54 +03:00
Whyrusleeping
ae420fc9f4 Merge branch 'testnet/3' into feat/gossipsub-v1.1 2020-04-30 10:19:42 -07:00
Łukasz Magiera
81e3b714a2 gofmt 2020-04-30 12:51:19 +02:00
Łukasz Magiera
5ec76d4b7b support making deals with data directly from IPFS nodes 2020-04-30 01:56:45 +02:00
vyzo
43aca717d1 gossipsubv1.1: tweak score parameters 2020-04-29 23:15:29 +03:00
vyzo
7de882b4d0 gossipsubv1.1: use score parameter helpers 2020-04-29 22:50:51 +03:00
vyzo
f8f6e28985 fix linter complaint 2020-04-29 19:01:45 +03:00
vyzo
9570ebfe0a fix comparison logic for bootstrap peers 2020-04-29 18:56:58 +03:00
vyzo
667fb17b43 gossipsubv1.1: configure larger overlay D params 2020-04-29 17:09:39 +03:00
vyzo
7d7c83ef79 gossipsubv1.1: configure scores for bootstrapper PX 2020-04-29 17:03:41 +03:00
vyzo
6b56652768 gossipsubv1.1: score parameters and flood publishing 2020-04-29 16:41:44 +03:00
Jeromy
6a27c65201 updating to specs actors v0.2.0 2020-04-28 13:52:07 -07:00
Travis Person
c807469a5a bitswap: disable provider (#1620)
Co-authored-by: Travis Person <travisperson@users.noreply.github.com>
2020-04-27 15:54:16 -07:00
Aayush Rajasekaran
7c22dabb63 default to setting max piece size to sector size 2020-04-24 01:01:22 -04:00
Łukasz Magiera
e6ce6211de Merge remote-tracking branch 'origin/testnet/3' into feat/dht-upgrade 2020-04-24 00:50:23 +02:00
Whyrusleeping
faa9002cce working on sector pledge requirements after specs-actors 1.0.0 (#1584)
* WIP: working on sector pledge requirements after specs-actors 1.0.0

* update storage-fsm with pledge collateral logic

* Set bigger balances for miners

* Return only additional required pledge

* split collateral methods into two methods

Co-authored-by: Łukasz Magiera <magik6k@gmail.com>
2020-04-23 12:39:34 -07:00
Jeromy
18f4e9d828 enable autonat service 2020-04-22 15:28:01 -07:00
Adin Schmahmann
9199c03f0d disable using the DHT to find provider records or arbitrary values 2020-04-22 11:13:26 -07:00
Adin Schmahmann
744a02eb5a update DHT options and use automatic DHT mode switching 2020-04-22 11:13:25 -07:00
Łukasz Magiera
b941b29fe5 miner: Use correct randomness for sealing 2020-04-20 20:33:53 +02:00
Łukasz Magiera
93b2b6d65d Merge branch 'testnet/3' into feat/windowed-post 2020-04-17 18:38:20 +02:00
Łukasz Magiera
bab352fb44 Wireup WinningPost validation 2020-04-17 16:47:19 +02:00
Łukasz Magiera
dc2a67f13f Fix worker key resolving 2020-04-16 22:38:42 +02:00
Łukasz Magiera
afdfc8807d api: Single method for static miner info 2020-04-16 19:36:36 +02:00
Jakub Sztandera
08e74a90f9 Add missing files
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-15 16:13:20 +02:00
Jeromy
4e6839b5ef some small cleanup 2020-04-14 15:13:52 -07:00
Jeromy
674be39af1 real drand network integration 2020-04-13 20:06:10 -07:00
Łukasz Magiera
5bf80a60f1 Get proof type in NewWinningPoStProver constructor 2020-04-13 23:25:46 +02:00
Łukasz Magiera
d3ffe48fcb Get things to mostly build 2020-04-10 23:29:05 +02:00
Łukasz Magiera
e053cd6b9c Merge remote-tracking branch 'origin/testnet/3' into feat/windowed-post 2020-04-10 23:09:01 +02:00
Łukasz Magiera
613e61222b mostly wire up WindowedPoSt 2020-04-10 23:07:18 +02:00
Łukasz Magiera
3426611340 Merge pull request #1526 from filecoin-project/feat/pass-deal-schedule-for-pre-commit-expiry-scheduling
provide deal scheduling info to FSM so that it can set pre-commit expiry
2020-04-10 23:05:50 +02:00
Łukasz Magiera
072dd8b744 Merge remote-tracking branch 'origin/testnet/3' into feat/windowed-post 2020-04-10 20:38:25 +02:00
Łukasz Magiera
0f0015f45c Merge pull request #1520 from filecoin-project/feat/graphsync-chainsync-extension
Update to latest go-fil-markets w/ enhanced Graphsync
2020-04-10 20:27:05 +02:00
laser
6dffe9377f provide deal scheduling info to FSM so that it can set pre-commit expiry 2020-04-10 08:22:28 -07:00
Jeromy
ef6fb1b756 rename beacon to randombeacon 2020-04-08 16:10:08 -07:00
hannahhoward
00cd89750d feat(deps): update fil-markets, graphsync
Updates dependencies for graphsync, fil-markets, data-transfer. Moves to new graphsync blockstore
swapping capabilities, and also locks down graphsync impl so it does not accept arbitrary requests
2020-04-07 23:25:29 -07:00
Jeromy
7075eaba26 WIP: random beacon interface
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-04-07 15:32:23 -07:00
Łukasz Magiera
e36f356908 wip changes for windowed post 2020-04-07 21:55:34 +02:00
Łukasz Magiera
5524241645 fpost -> windowPost renaming 2020-04-07 19:41:41 +02:00
laser
110c869dd3 cut over to storage-fsm, deleting local sealing package 2020-04-07 09:34:09 -07:00
laser
650a31b050 remove all lotus types from sealing package in preparation for extraction
events adapter

implement StateWaitMsg and StateComputeDataCommitment

implement StateGetSectorPreCommitOnChainInfo

implement ChainHead and SendMsg

implement remaining methods
2020-04-06 12:57:55 -07:00
Łukasz Magiera
f05be81275 fsm: Get correct interactive randomness if it lands on a nullblock 2020-04-04 04:57:05 +02:00
Łukasz Magiera
13f2c21e1d Get network name from genesis 2020-04-01 01:15:49 +02:00
Łukasz Magiera
95ee1c1cde Extract sector-storage 2020-03-28 01:32:39 +01:00
Łukasz Magiera
c66d3dfad7 sectorstorage: Untangle from lotus deps 2020-03-27 22:35:33 +01:00
Łukasz Magiera
e050e0307e Cleanup after dropping sectorbuilder 2020-03-26 20:35:16 +01:00
Łukasz Magiera
4be54a976c Merge sectorbuilder into sectorstorage 2020-03-26 03:51:06 +01:00
Łukasz Magiera
cfc65f525a sectorstorage: wire up closing logic 2020-03-25 00:52:55 +01:00
Łukasz Magiera
5de17e903c storageminer: Config for local worker task types 2020-03-24 20:38:00 +01:00
Łukasz Magiera
66a682b55d Merge remote-tracking branch 'origin/testnet/3' into feat/new-workers 2020-03-24 19:09:02 +01:00
Łukasz Magiera
726c9c1fe7 workers: Address review 2020-03-24 19:01:04 +01:00
Łukasz Magiera
5e4a7e54df Rename agvmgr+sealmgr to sectorstorage 2020-03-23 12:47:10 +01:00
hannahhoward
34f755b2b9 feat(chainsync): fixes to make graphsync work for chain fetching
- store to chain blockstore (ok for now, since storage provider is a seperate process)
- simplify request fetching and processing
2020-03-20 21:30:24 -07:00
whyrusleeping
1076a1a89d WIP: integrate graphsync for chainsync requests 2020-03-20 21:30:24 -07:00
Łukasz Magiera
1ed7779701 Merge remote-tracking branch 'origin/testnet/3' into feat/new-workers 2020-03-19 03:28:55 +01:00
laser
366db2f38c adjust import order as per PR feedback 2020-03-18 12:43:06 -07:00
laser
f59bf6fab1 wire up dtypes.ClientDatastore 2020-03-18 11:57:22 -07:00
Łukasz Magiera
5f2caffb51 Fix tests after specs-storage changes 2020-03-18 02:08:11 +01:00
hannahhoward
f259bc6a09 feat(graphsync): unified graphsync instance
setup a single graphsync that loads from both the chainstore & client blockstore
2020-03-17 17:25:12 -07:00
Łukasz Magiera
d8ce5078d9 Use new specs-storage interface 2020-03-17 21:19:52 +01:00
Łukasz Magiera
7e997e40f3 workers: Simple storage diagnostics 2020-03-16 18:50:07 +01:00
whyrusleeping
ab51c7e2d2 Fix fallback post scheduling to hopefully do the right thing 2020-03-08 00:19:38 -08:00
whyrusleeping
24bf720a9a Merge branch 'master' into testnet/3 2020-03-07 16:46:12 -08:00
Steven Allen
6992fd4dba chore(dep): update dependencies
Updates:

* cid, multihash, and multiaddr to ensure that minimal varints are used.
* log to deduplicate some code between version 2 and version 1.
* multistream to avoid writing from multiple threads.
* badger/datastore to harden prefix handling in queries.
* libp2p to 0.5.2

BREAKING:

The new libp2p version now formats addresses with /p2p instead of /ipfs. /ipfs
multiaddrs are still supported.
2020-03-05 16:28:42 -08:00
Łukasz Magiera
1461e475da storage: Support adding paths at runtime 2020-03-05 23:02:01 +01:00
Łukasz Magiera
7db1dd52bd storagemgr: Wire up most of AddPiece logic 2020-03-05 01:38:07 +01:00
Łukasz Magiera
799ff17c7c Merge remote-tracking branch 'origin/testnet/3' into feat/4stage-seal 2020-03-04 06:37:11 +01:00
whyrusleeping
37d5baf0b2 fix blocks topic 2020-03-03 21:03:35 -08:00
Łukasz Magiera
4e46d00eb6 Merge remote-tracking branch 'origin/testnet/3' into feat/4stage-seal 2020-03-04 04:01:13 +01:00
whyrusleeping
d6723935b9 fixup to match spec, move constants to common location 2020-03-03 15:48:25 -08:00
Łukasz Magiera
a0dbb6bdd6 Storage Manager refactor 2020-03-03 23:19:22 +01:00
lanzafame
4f2baa8953 conform protocol ids to spec
Signed-off-by: lanzafame <adrianlanzafame92@gmail.com>
2020-03-03 11:34:43 +10:00
whyrusleeping
00efd097c7 implement basic message filtering 2020-02-27 17:40:16 -08:00
whyrusleeping
d8dda1ee66 debugging test failure 2020-02-27 15:14:15 -08:00
whyrusleeping
df6e3e83bf make it all build finally 2020-02-27 13:45:31 -08:00
Łukasz Magiera
d787aa5007 Merge branch 'testnet/3' into feat/specs-actors 2020-02-24 18:32:02 +01:00
Łukasz Magiera
917df9a5b8 More unified randomness handling 2020-02-23 21:00:47 +01:00
Łukasz Magiera
99c0e14fd8 Fix genesis writing 2020-02-22 13:03:41 +01:00
Łukasz Magiera
b12482df89 move peermgr, tracing into lib 2020-02-22 12:36:22 +01:00
Łukasz Magiera
111d35deef seed: New genesis creation commands 2020-02-21 21:57:00 +01:00
Łukasz Magiera
852e888232 cmd/lotus: Fix build 2020-02-21 19:00:10 +01:00
Łukasz Magiera
a6268f055d storageminer: Update api interfaces 2020-02-21 18:43:44 +01:00
Łukasz Magiera
69ec3c205a Merge remote-tracking branch 'origin/master' into testnet/3 2020-02-19 22:10:14 +01:00
Whyrusleeping
6afeb2e72b
Merge pull request #1268 from filecoin-project/feat/simple-spam-protection
basic gossip spam protection logic
2020-02-18 10:39:36 -08:00
whyrusleeping
4f6ec225cf mark peer for disconnection in connmgr 2020-02-18 09:20:17 -08:00
Aayush Rajasekaran
60970008c8 Re: #1250: API methods should receive TipSetKeys, not TipSets, as input 2020-02-17 19:53:43 -05:00
Whyrusleeping
1c9072bf6e
Merge pull request #1235 from filecoin-project/feat/tls
Prefer tls
2020-02-17 11:26:50 -08:00
Jakub Sztandera
8af80169c0 Add graphsync
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-17 18:15:30 +01:00
whyrusleeping
1dafcf24f1 basic gossip spam protection logic 2020-02-16 21:51:18 -08:00
Łukasz Magiera
36aed6f871 Update cbor-gen 2020-02-13 02:37:28 +01:00
Łukasz Magiera
e1a593c22e Rename paych -> paychmgr to fix cbor-gen 2020-02-13 01:28:23 +01:00
Jakub Sztandera
49167cc55f
Expose JWT permission error
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-12 21:25:29 +01:00
Łukasz Magiera
63e801e00f genesis: Cleanup the structure 2020-02-11 21:48:03 +01:00
Łukasz Magiera
c72727b4fd specs-actors: Fix most compilation errors 2020-02-09 07:06:32 +01:00
Jakub Sztandera
352fb9f9ea
Prefer tls
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-02-07 14:04:47 +01:00
hannahhoward
d2c5d81e59 fix(deps): update go-fil-markets
update go-fil-markets to latest to solve an issue with retrieval
2020-02-05 18:48:47 -08:00
Łukasz Magiera
0e81c1cf7e Merge branch 'testnet/3' into feat/update-markets 2020-02-04 07:17:22 +01:00
Łukasz Magiera
90ecfbe0e4 Merge branch 'master' into feat/new-sb-fs 2020-02-04 04:15:25 +01:00
laser
d8f5330c29 don't consume short-lived context 2020-02-03 15:48:11 -08:00
laser
ea2f53745e split FPoStScheduler from Miner
Rationale: Nodes want to handle scheduling of PoSts. Splitting the 
FPoStScheduler from the Miner allows nodes to reuse the Miner w/out 
having to reuse the PoSt scheduler.
2020-02-03 15:48:11 -08:00
Łukasz Magiera
a62572bb76 Merge remote-tracking branch 'origin/master' into feat/new-sb-fs 2020-01-31 08:36:47 +01:00
Łukasz Magiera
aefc463586 build: Lazy ParametersJson 2020-01-30 23:50:24 +01:00
Łukasz Magiera
3f58ffe572 storageminer: New storage config 2020-01-29 20:53:45 +01:00
Łukasz Magiera
5af64c53b6 initial sectorbuilder FS refactor integration 2020-01-29 00:08:02 +01:00
hannahhoward
71289b58ff feat(markets): update to support car files
Upgrades lotus version of go-fil-markets to its head, which supports car files and handles tracking
of pieces, reducing the size of sectorBlocks
2020-01-28 14:08:13 -08:00
Łukasz Magiera
d4c50b8ea0 sealing: gofmt 2020-01-16 03:54:57 +01:00
Łukasz Magiera
604bf64ef6 Move miner sealing logic into a separate package 2020-01-15 21:49:11 +01:00
Łukasz Magiera
2ca0c152ba Deal tests on mock sectorbuilder 2020-01-14 03:05:46 +01:00
Łukasz Magiera
a2bcc1fec2 Mostly functional mock sectorbuilder 2020-01-14 03:05:35 +01:00
whyrusleeping
fefd21ad9c remove private network and put dht into a sub namespace 2020-01-13 15:29:06 -08:00
Łukasz Magiera
a896b30039 gofmt 2020-01-10 20:55:58 +01:00
Łukasz Magiera
50bac00329 Merge branch 'master' into feat/testnet2 2020-01-10 20:55:40 +01:00
hannahhoward
0ce1bf706b refactor(markets): reorg file structure 2020-01-10 10:33:26 -08:00
hannahhoward
56653eeca6 fix(storagemarket): fix compile errors 2020-01-10 10:01:48 -08:00
hannahhoward
65ecb33630 feat(storagemarket): extract storage market
remove all shared components, point at go-fil-components repo
2020-01-10 09:49:07 -08:00
hannahhoward
0a4eeb7cb1 refactor(retrievalmarket): switch to go-fil-markets repo
Switch go-fil-components to go-fil-markets
2020-01-10 09:13:12 -08:00
hannahhoward
ccf359d057 feat(retrieval): extract retrievalmarket
Extract retrieval market and modify shared types
2020-01-09 19:46:07 -08:00
hannahhoward
da4528932a feat(storagemarket): initial extraction
Types for storage market

Modify deals.Provider to implement storagemarket.StorageProvider

Inject storagemarket.StorageProvider

Storage Provider interfaces

Storage Client interfaces

Add ValidatePublishedDeal to ClientNodeAdapter

Remove FundManager from client

Remove Wallet from client

Remove StateManager, Events, Wallet from client

Rebasing

- Copy types.BigInt, use TokenAmount/BigInt for token amounts
- Remove auto-imported log package
- Move `checkAskSignature` to a client file.
- Plumb contexts through

fix(storagemarket): use publish cids

Switch back to publish message cids to reduce the dependency surface area
2020-01-10 03:29:46 +01:00
Łukasz Magiera
5f460b380d
Merge pull request #1045 from filecoin-project/feat/mock-sectorbuilder
WIP: implement mock sectorbuilder for easier storage miner testing
2020-01-10 01:33:43 +01:00
Łukasz Magiera
f0f8d83980
Merge pull request #826 from filecoin-project/feat/retrieval-market-skeleton
Retrieval Market Cleanup W/ Node Interfaces
2020-01-09 22:06:46 +01:00
Łukasz Magiera
fac47bfc54 Pass correct datastore into sectorbuilder 2020-01-09 14:23:44 +01:00
whyrusleeping
cc56389dbb attempt to fix the DI loading, still not working 2020-01-08 20:51:18 -08:00
Łukasz Magiera
8cbcbbd7a4 Merge branch 'feat/testnet2' of github.com:filecoin-project/go-lotus into feat/testnet2 2020-01-08 22:44:54 +01:00
hannahhoward
5b74a71dd3 feat(retrievalmarket): extract skeleton interfaces
Define all types to spec, modify interfaces, wrap old code

fix(builder): use client blockstore for retrieval

feat(retrieval): add node implementations

add node adapters for client & provider so that retrieval can be extracted
2020-01-08 12:45:43 -08:00
Łukasz Magiera
da38822dfd paramfetch: bring parameters.json back to this repo 2020-01-08 21:31:35 +01:00
Jakub Sztandera
1ed62628a7
Update go-log to v2
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2020-01-08 20:22:31 +01:00
hannahhoward
5312340bf9 refactor(datatransfer): use independent repo
Use independent repo for go-data-transfer
2020-01-08 14:20:31 +01:00
hannahhoward
61e2568b8d feat(datatransfer): implement and extract
feat(datatransfer): setup implementation path

Sets up a path to implementation, offering both the dagservice implementation and a future graphsync
implement, establishes message interfaces and network layer, and isolates the datatransfer module
from the app

WIP using CBOR encoding for dataxfermsg

* Bring cbor-gen stuff into datatransfer package
* make transferRequest private struct
* add transferResponse + funcs
* Rename VoucherID to VoucherType
* more tests passing

WIP trying out some stuff
* Embed request/response in message so all the interfaces work AND the CBOR unmarshaling works: this is more like the spec anyway
* get rid of pb stuff

all message tests passing, some others in datatransfer

Some cleanup for PR

Cleanup for PR, clarifying and additional comments

mod tidy

Respond to PR comments:
* Make DataTransferRequest/Response be returned in from Net
* Regenerate cbor_gen and fix the generator caller so it works better
* Please the linters

Fix tests

Initiate push and pull requests (#536)

* add issue link for data TransferID generation
* comment out failing but not relevant tests
* finish voucher rename from Identifier --> Type

tests passing

cleanup for PR

remove unused fmt import in graphsync_test

a better reflection

send data transfer response

other tests passing

feat(datatransfer): milestone 2 infrastructure

Setup test path for all tickets for milestone 2

responses alert subscribers when request is not accepted (#607)

Graphsync response is scheduled when a valid push request is received (#625)

fix(datatransfer): fix tests

fix an error with read buffers in tests

fix(deps): fix go.sum

Feat/dt graphsync pullreqs (#627)

* graphsync responses to pull requests

Feat/dt initiator cleanup (#645)

* ChannelID.To --> ChannelID.Initiator
* We now store our peer ID (from host.ID()) so it can be used when creating ChannelIDs.
* InProgressChannels returns all of impl.channels, currently just for testing
* Implements go-data-transfer issue
* Some assertions were changed based on the above.
* Renamed some variables and added some assertions based on the new understanding
* Updated SHA for graphsync module
* Updated fakeGraphSync test structs to use new interfaces from new SHA above

Techdebt/dt split graphsync impl receiver (#651)

* Split up graphsyncImpl and graphsyncReceiver
* rename graphsync to utils

DTM sends data over graphsync for validated push requests (#665)

* create channels when a request is received. register push request hook with graphsync. fix tests.
* better NewReaders
* use mutex lock around impl.channels access
* fix(datatransfer): fix test uncertainty
* fix a data race and also don't use random bytes in basic block which can fail
* privatize 3 funcs

with @hannahhoward

Feat/dt gs pullrequests (#693)

* Implements DTM Sends Data Over Graphsync For Validated Pull Requests
* rename a field in a test struct
* refactor a couple of private functions (one was refactored out of existence)

Feat/dt subscribe, file Xfer round trip (#720)

Implements the rest of Subscriber Is Notified When Request Completed #24:
* send a graphsync message within a go func and consume responses until error or transfer is complete.
* notify subscribers of results.
* Rename datatransfer.Event to EventCode.
* datatransfer.Event is now a struct that includes a message and a timestamp as well as the Event.Code int, formerly Event, update all uses
* Add extension data to graphsync request hook, gsReq
* rename sendRequest to sendDtRequest, to distinguish it from sendGsRequest, where Dt = datatransfer, Gs = graphsync
* use a mutex lock for last transfer ID
* obey the linter

Don't respond with error in gsReqRcdHook when we can't find the datatransfer extension. (#754)

* update to correct graphsync version, update tests & code to call the new graphsync hooks
* getExtensionData returns an empty struct + nil if we can't find our extension
* Don't respond with error when we can't find the extension.
* Test for same
* mod tidy

minor fix to go.sum

feat(datatransfer): switch to graphsync implementation

Move over to real graphsync implementation of data transfer, add constructors for graphsync
instances on client and miner side

fix(datatransfer): Fix validators

Validators were checking payload cid against commP -- which are not the same any more. Added a
payloadCid to client deal to maintain the record, fixed validator logic

Feat/dt extraction use go-fil-components/datatransfer (#770)

* Initial commit after changing to go-fil-components/datatransfer
* blow away the datatransfer dir
* use go-fil-components master after its PR #1 was merged
* go mod tidy

use a package

updates after rebase with master
2020-01-08 14:19:28 +01:00
laser
20321bb476 handle rebase 2020-01-07 08:18:35 -08:00
acruikshank
7873213b11 switch sectorbuilder from lib to external module
point to correct version of sectorbuilder + ensure go-datastore stays at 0.1.1

replace local address type with go-address

consume paramfetch.GetParams instead of local paramfetch.go

remove constants now defined in sectorbuilder
2020-01-07 07:48:43 -08:00
hannahhoward
8418464d91 refactor(address): use extracted address library
Switch to using extracted address library
2020-01-07 14:53:27 +01:00
laser
6a740a6d67 consume newly-extracted paramfetch 2020-01-02 11:08:49 -08:00
whyrusleeping
e5899f614a Tag peers who send us good blocks over pubsub 2019-12-19 12:47:55 -08:00
Łukasz Magiera
a4521955d5 libp2p: enable ping 2019-12-18 20:33:13 +01:00
whyrusleeping
619e6ffdd7 fix master build 2019-12-17 14:20:37 -08:00
whyrusleeping
ff5b086f58 mark bootstrap peers as protected 2019-12-17 11:18:19 -08:00
whyrusleeping
ca7e2e76c2 drop miner tagger logic as it doesnt do what we want it to 2019-12-17 10:16:10 -08:00
Łukasz Magiera
8284436eae Setup PeerTagger as Invoke 2019-12-17 17:28:02 +01:00
Łukasz Magiera
241c7c7ecc Wire up ConnMgr config 2019-12-17 17:09:43 +01:00
whyrusleeping
7dcc528cd1 tag peers who propagate good blocks to us 2019-12-16 23:06:48 -08:00
whyrusleeping
022581d50b add routine to tag miners peer IDs as high value in connection manager 2019-12-16 22:51:41 -08:00
whyrusleeping
28b470cb0d blocksync tagging 2019-12-16 22:15:06 -08:00
whyrusleeping
eb4077b1af allow specifying some protected peers in the config file 2019-12-16 21:37:31 -08:00
Łukasz Magiera
825e3a0774 sectorbuilder: check free space before creating sectors 2019-12-16 17:16:08 +01:00
whyrusleeping
d6bfbe5a26 allow setting genesis timestamp when initializing network 2019-12-11 15:36:39 +01:00
Łukasz Magiera
ce6912047d Change pnet key 2019-12-10 23:11:45 +01:00
whyrusleeping
b444771427 setup enough fake peer IDs for miner generation 2019-12-09 19:56:55 +01:00
Łukasz Magiera
c49dc28a04 Move api struct to a seprate pkg 2019-12-09 18:22:11 +01:00
Łukasz Magiera
83924e6b97
sectorbuilder: Allow to restrict task types
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-12-07 19:05:15 +01:00
Łukasz Magiera
6f024bee58
Merge pull request #736 from filecoin-project/feat/params-v20
Params v20
2019-12-05 14:03:37 +01:00
whyrusleeping
b7a89b56b3 more statticcheck! 2019-12-04 21:14:19 -08:00
whyrusleeping
df069af5e5 some errcheck discoveries 2019-12-04 21:02:14 -08:00
Łukasz Magiera
3daf9103a8 paramfetch: Only pull necessary params 2019-12-04 20:44:15 +01:00
Łukasz Magiera
160e11ce8c Merge branch 'master' into feat/remote-workers 2019-12-03 03:24:00 +01:00
whyrusleeping
68e25b36f1 rename to avoid stuttering 2019-12-02 14:33:11 -08:00
whyrusleeping
b58e7344e8 pull messagepool into separate package 2019-12-02 14:33:11 -08:00
whyrusleeping
8da3cc875e Fix message nonce tracking during head changes 2019-12-02 14:33:11 -08:00
Łukasz Magiera
923748e551 Expand paths in node init 2019-12-02 23:10:22 +01:00
Łukasz Magiera
d5b94884c8 Buch of lint fixes 2019-12-02 13:51:16 +01:00
Łukasz Magiera
a47fbfa799 Merge branch 'devnet/9' into feat/election-post 2019-12-02 12:25:23 +01:00
Łukasz Magiera
a59d0f0f8c Fix unsealing, sector based data refs 2019-12-01 18:58:31 +01:00
Łukasz Magiera
ed9279cf0c Some fixes and dev utils 2019-11-30 10:25:31 +01:00
whyrusleeping
3b533ed76c Genesis miner config actually sets the created miner address now 2019-11-29 22:31:26 -06:00
Łukasz Magiera
cb7d15e67e genesis setup improvements 2019-11-28 23:50:58 +01:00
Łukasz Magiera
16d5eea9b1
Merge pull request #684 from gguoss/master
Delete died code
2019-11-28 14:21:21 +01:00
郭光华
a8093c2962
Delete died code
Lotus used kad dht as discovery protocol, not mdns .
2019-11-28 18:06:00 +08:00
Łukasz Magiera
23e0008b81 Merge remote-tracking branch 'origin/master' into feat/election-post 2019-11-27 13:31:44 +01:00
Łukasz Magiera
d5a632f644 sectorbuilder: Drop stateful sectorbuilder refs 2019-11-26 23:13:01 +01:00
whyrusleeping
a0588d513d Add lotus-gen, rewire genesis mining 2019-11-24 22:45:13 -06:00
Łukasz Magiera
43a5172944 mpool: persist local messages 2019-11-23 20:05:18 +01:00
Łukasz Magiera
2deae35dcc
Merge pull request #672 from filecoin-project/feat/no-pkg-error
Swtich to xerrors
2019-11-22 12:40:59 -06:00
Jakub Sztandera
36b7c5a32a
Swtich to xerrors
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-11-22 10:20:56 -06:00
Łukasz Magiera
c7c422abbd Use config for pubsub tracing 2019-11-20 21:31:00 +01:00
whyrusleeping
f8eabd3db4 Refactor mining logic to match specs ticket chain 2019-11-20 10:52:36 -06:00
vyzo
3a8100fd3c hardcode pubsub tracer 2019-11-20 01:31:55 +02:00
whyrusleeping
7aa76d21d1 It works! 2019-11-15 13:35:29 -08:00
Jakub Sztandera
2bc5ccab04
Add repub for local messages
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protocol.ai>
2019-11-13 23:43:16 +01:00
anorth
84a4766d8f Add TipSetKey as a concatenation of block CIDs, and use if for ChainGetTipSet, ChainGetRandomness. 2019-11-13 15:23:37 +11:00
hannahhoward
4b3bab371b refactor(deals): move type instantiation to modules
Move all type instantiation to dtypes & modules for any type unique to provider/client
2019-11-11 12:51:28 -08:00
hannahhoward
ccfc3c5b19 refactor(datatransfer): move registrations to builder
move registration function for validators to builder code
2019-11-11 12:25:19 -08:00
whyrusleeping
904fdad4c6 extract blocksync into its own package 2019-11-09 15:00:22 -08:00
Łukasz Magiera
3d360167df sectorbuilder: Call destroy in DI module 2019-11-08 21:30:50 +01:00
Łukasz Magiera
2d26a4edf7 Sector storage refactor 2019-11-07 19:22:59 +01:00
whyrusleeping
9863942fe2 WIP: trying to write a test to reproduce the storage deal error 2019-11-07 00:39:34 +01:00
Łukasz Magiera
ed5ccfd750 Merge remote-tracking branch 'origin/devnet/7' into feat/interactive-porep 2019-11-05 18:53:19 +01:00
Łukasz Magiera
13da5a5966 Put WorkerThreads on sectorbuilder.Config 2019-11-04 17:47:08 +01:00
Łukasz Magiera
3bc4a5dddf More progress on fixing storing garbage data 2019-11-02 00:43:54 +01:00
Łukasz Magiera
82344649d3 Use state store for sectors 2019-11-01 15:06:49 +01:00
whyrusleeping
fc9091cc89 Get interactive porep sector sealing mostly working 2019-10-31 20:57:10 -07:00
whyrusleeping
a954ebc6b6 Add command to unregister miner from full node manually 2019-10-31 15:04:13 -07:00
whyrusleeping
759094198c Some more progress on interactive porep 2019-10-30 18:22:50 -07:00