Shrenuj Bansal
0befed7200
Add API and CLI to unseal sector ( #10626 )
2023-04-17 12:12:15 -04:00
Shrenuj Bansal
1e25d7b453
Split precommit batches if gas used exceeds block limit
2023-04-10 14:52:39 -04:00
ZenGround0
da6b565dc1
Update config default value ( #10605 )
...
Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com>
2023-04-10 10:13:22 -04:00
Steven Allen
d1364caa84
fix: cap the message gas limit at the block gas limit ( #10637 )
...
Technically, if a message is near the block gas limit, this method could
over-estimate past the block gas limit. Instead, cap at the block gas
limit.
2023-04-08 14:57:28 -07:00
zenground0
0314db7894
Update config default value
2023-04-04 20:35:28 +02:00
Shrenuj Bansal
2278a209e2
Add feature to stagger sector prove commit submission ( #10543 )
...
* Add feature to stagger sector prove commit submission
* make gen and docsgen as usual
* address comments and lint
* Update comment
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
* make gen for stupid comment
* make docsgen
* address comments
---------
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
2023-04-01 19:30:32 -04:00
Aayush Rajasekaran
8b2208fd9a
Merge pull request #9858 from adlrocha/adlrocha/consistent-bcast
...
feat:networking: (Synchronous) Consistent Broadcast for Filecoin EC
2023-03-30 09:32:09 -04:00
Jiaying Wang
caa6dd9c41
Merge pull request #10594 from filecoin-project/phi/v1210-rc2
...
build: release: v1.21.0-rc2
2023-03-29 15:59:56 -04:00
Aayush
66fc6dc3e5
refactor: stop using deprecated io/ioutil
2023-03-29 15:40:49 -04:00
Aayush
a724a713da
refactor: stop using deprecated io/ioutil
2023-03-29 15:38:46 -04:00
Mikers
06294351fa
perf: eth: gas estimate set applyTsMessages false ( #10546 )
...
* have gas estimate call callInternal with applyTsMessages = false and other calls with applyTsMessages=true for gas caclulation optimization
* set applyTsMessages = true in CallWithGas call in shed
* update test with new callwithgas api optimization for eth call
* Update chain/stmgr/call.go
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
* env flag LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS must be 1 in order to have applyTsMessages change
* env flag LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS must be 1 in order to have applyTsMessages change
* make sure that even if we arent apply ts messages we grab ts messages from the particular user who is requesting gas estimation
---------
Co-authored-by: Jiaying Wang <42981373+jennijuju@users.noreply.github.com>
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
Co-authored-by: Ubuntu <ubuntu@ip-10-0-4-29.us-east-2.compute.internal>
2023-03-29 14:25:40 -04:00
Alfonso de la Rocha
b7c297c537
Merge branch 'master' into adlrocha/consistent-bcast
2023-03-28 16:55:06 +02:00
Mikers
41fce94db4
perf: eth: gas estimate set applyTsMessages false ( #10546 )
...
* have gas estimate call callInternal with applyTsMessages = false and other calls with applyTsMessages=true for gas caclulation optimization
* set applyTsMessages = true in CallWithGas call in shed
* update test with new callwithgas api optimization for eth call
* Update chain/stmgr/call.go
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
* env flag LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS must be 1 in order to have applyTsMessages change
* env flag LOTUS_SKIP_APPLY_TS_MESSAGE_CALL_WITH_GAS must be 1 in order to have applyTsMessages change
* make sure that even if we arent apply ts messages we grab ts messages from the particular user who is requesting gas estimation
---------
Co-authored-by: Jiaying Wang <42981373+jennijuju@users.noreply.github.com>
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
Co-authored-by: Ubuntu <ubuntu@ip-10-0-4-29.us-east-2.compute.internal>
2023-03-23 18:27:01 -04:00
Aayush
57d4c98d00
fix: gas estimation: don't special case paych collects
2023-03-23 09:50:28 -04:00
Łukasz Magiera
1022ac5e2b
Merge pull request #10271 from iand/iand/fix-tracer-pid
...
fix: tracer: emit raw peer ids for compatibility with libp2p tracer
2023-03-23 12:41:31 +01:00
vyzo
8abe0ea608
Merge pull request #10452 from filecoin-project/vyzo/feat/chain/msgindex
...
feat:chain: Message Index
2023-03-22 17:02:34 +02:00
raulk
0f8a4b7789
fix: Eth RPC: do not occlude block param errors.
2023-03-22 11:37:35 +00:00
ZenGround0
43da108466
feat:config:force existing users to opt into new defaults ( #10488 )
...
* Config default does not comment out EnableSplitstore
* Loadability check
* Remove test used for debugging
* regexp for properly safe check that config is set
* regexp for safely matching the EnableSpitstore field in the config
* Add instructions for undeleting config and remind users to set splitstore false for full archive
* UpdateConfig small docs and functional opts
* make gen
* Lint
* Fix
* nil pointer check on validate
* Unit testing of EnableSplitstore cases
* Address Review
---------
Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com>
2023-03-20 12:19:14 -04:00
Steven Allen
2207ab3c93
fix: eth: handle a potential divide by zero in receipt handling
...
This isn't really possible to hit on-chain at this piont (message won't
be accepted) but we might as well be extra careful.
fixes #10471
2023-03-16 08:53:52 -07:00
Łukasz Magiera
093ff95580
Merge pull request #10467 from filecoin-project/steb/gw-eth-lookback-limit
...
feat: apply gateway lookback limit to eth API lookback
2023-03-16 08:50:59 +01:00
Łukasz Magiera
c0aed3c4a2
Merge pull request #10474 from filecoin-project/raulk/fix-pending-support
...
fix: revert "Eth API: drop support for 'pending' block parameter."
2023-03-16 08:49:49 +01:00
Steven Allen
17274e72da
feat: expose limited apis on the gateway
2023-03-15 16:12:18 -07:00
Steven Allen
3776ee3b62
fix: actually apply limit
2023-03-15 16:11:13 -07:00
Steven Allen
fee480193e
feat: apply gateway lookback limit to eth API lookback
...
This change:
1. Introduces new "limited" API endpoints for EthGetTransactionByHash
and EthGetTransactionReceipt that accept lookback-limits.
2. Implements the gateway version of these API endpoints by calling the
limited variants with the default message search lookback limit.
fixes #10412
2023-03-15 16:11:11 -07:00
Łukasz Magiera
720e95991c
make lint happy
2023-03-15 18:52:11 +01:00
Łukasz Magiera
470dd8da3d
ethrpc: Buffer sub messages if subscriber is slow
2023-03-15 18:34:10 +01:00
Łukasz Magiera
7e414ac390
Merge remote-tracking branch 'origin/master' into feat/go-data-transfer-v2
2023-03-15 11:37:53 +01:00
raulk
e8325f9a98
Revert "Eth API: drop support for 'pending' block parameter."
...
This reverts commit 9412753ba3
.
2023-03-14 13:46:01 +00:00
Steven Allen
dcb49dc8ee
refactor: update cache to the new generic version ( #10463 )
...
- Adds type safety.
- Reduces allocations.
- Fixes the drand cache (was storing by value, but retrieving by pointer)
2023-03-13 15:29:09 -07:00
Steven Allen
73a2b4152b
feat: eth: Avoid StateCompute in EthTxnReceipt lookup ( #10460 )
...
Instead:
1. Use the receipt from the message search.
2. Re-compute the gas fees that would have been charged.
fixes #10418
Co-authored-by: raulk <raul.kripalani@gmail.com>
2023-03-13 11:44:59 -07:00
raulk
75c279ab97
Merge pull request #10456 from filecoin-project/raulk/fix-eth-net_version
2023-03-13 11:25:19 +00:00
vyzo
0a5618d406
make gen
2023-03-13 12:10:36 +02:00
vyzo
db8b593c9b
make MsgIndex configurable, disabled by default.
2023-03-13 12:01:04 +02:00
vyzo
3c945e9e3c
no need to return error from DummyMsgIndex DI constructor
2023-03-13 12:00:48 +02:00
vyzo
b90cfff0aa
wire in lifecycle context
2023-03-13 10:42:48 +02:00
Raúl Kripalani
2e56237898
Merge branch 'master' into asr/fix-eth-api-gateway
2023-03-12 15:56:55 +00:00
Raúl Kripalani
e65a5988e1
Eth API: make eth_getTransactionByBlock* ops return ErrUnsupported.
2023-03-12 15:53:56 +00:00
vyzo
3b765a30d3
dummy index for itests
2023-03-12 16:02:51 +02:00
vyzo
171734ea31
hook the index into the rest of lotus
2023-03-12 15:25:07 +02:00
Raúl Kripalani
5a4b5ff97e
remove superfluous filter.
2023-03-12 00:44:49 +00:00
Raúl Kripalani
7ce92f1422
Eth API: make net_version return the chain ID.
2023-03-11 23:26:26 +00:00
Raúl Kripalani
9412753ba3
Eth API: drop support for 'pending' block parameter.
...
After transitioning from using StateCompute to loading receipts,
we can no longer handle the 'pending' block without forcing
computation. Eth Core Devs are evaluating a proposal to remove
support on their end too.
2023-03-11 23:03:21 +00:00
Raúl Kripalani
f7a979d825
eth_feeHistory: migrate to using TipSetState.
2023-03-11 17:25:00 +00:00
Steven Allen
eba270d1e2
feat: api: optimize ChainGetParentReceipts
...
Read the receipts all at once instead of fetching them one-by-one.
2023-03-10 16:01:34 -08:00
Steven Allen
1cf57ffe2d
feat: eth: optimize receipt reading
...
This optimizes the eth APIs (except the fee history one) to lookup the
tipset state/receipts instead of computing the state.
2023-03-10 15:33:45 -08:00
Travis Person
f641139bf2
Merge pull request #10282 from filecoin-project/feat/cache-migrated-stateroot
...
feat: stmgr: cache migrated stateroots
2023-03-09 11:47:43 -08:00
Jiaying Wang
1096ead73e
Merge pull request #10427 from filecoin-project/raulk/fix-eth-parseBlkParam
...
fix: Eth API: make block parameter parsing sounder.
2023-03-09 14:21:24 -05:00
Raúl Kripalani
fce0813821
switch to ChainAPI#ChainGetTipSetByHeight.
2023-03-09 18:51:38 +00:00
Aayush Rajasekaran
9fa81673da
Merge pull request #10411 from filecoin-project/asr/simplity-new-eth-tx-rct
...
refactor: EthAPI: Drop unnecessary param from newEthTxReceipt
2023-03-09 12:44:44 -05:00
Łukasz Magiera
faedc12531
Merge pull request #10391 from filecoin-project/feat/record-hotstore-space
...
feat:splitstore:Configure max space used by hotstore and GC makes best effort to respect
2023-03-09 17:41:36 +01:00
zenground0
87d5a3723f
lint
2023-03-09 08:57:14 -07:00
zenground0
bd0c010be6
Configur buffer and threshold
2023-03-09 08:40:14 -07:00
ZenGround0
c80783dbea
feat:splitstore:Splitstore enabled by default ( #10429 )
...
Discard mode
---------
Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com>
2023-03-09 08:37:34 -05:00
Raúl Kripalani
941ef84b71
Merge branch 'master' into raulk/fix-eth-parseBlkParam
2023-03-09 12:16:23 +00:00
Aayush Rajasekaran
ab91ab100f
fix: eth API: return correct txIdx around null blocks ( #10419 )
2023-03-09 12:14:57 +00:00
Marten Seemann
4f060b87bb
only register metrics once
2023-03-09 16:44:37 +13:00
zenground0
efbb63582e
Review Response
2023-03-08 18:11:39 -07:00
ychiao
0a0df61d77
fix: EthAPI: use StateCompute for feeHistory; apply minimum gas premium ( #10413 )
2023-03-09 00:28:17 +00:00
Marten Seemann
0f5f91c094
register rcmgr metrics
2023-03-09 11:52:53 +13:00
Raúl Kripalani
28d8b4cd65
Eth API: fail when requesting future epochs.
2023-03-08 20:49:36 +00:00
Raúl Kripalani
cef416e2b0
Eth API: make block parameter parsing sounder.
2023-03-08 20:38:09 +00:00
Łukasz Magiera
d114d8fe7e
deprecate MarketListRetrievalDeals, make gen
2023-03-08 17:15:16 +01:00
Marten Seemann
db6efe6512
use go-libipfs/files instead of ipfs/go-ipfs-files
2023-03-08 17:50:56 +13:00
hannahhoward
7bc6185077
chore(deps): update to get to compile
2023-03-07 11:45:30 -08:00
hannahhoward
16dad6342c
feat(deps): update to go-data-transfer v2, still wip
2023-03-07 11:44:29 -08:00
Aayush
f1b1eb8b36
refactor: EthAPI: Drop unnecessary param from newEthTxReceipt
2023-03-07 13:40:39 -05:00
Aayush
8b5bc45fcf
fix: eth API: correct gateway restrictions, drop unimplemented methods
2023-03-07 12:53:04 -05:00
zenground0
a994153e27
GC respects target for max hotstore space
2023-03-07 07:39:17 -07:00
Łukasz Magiera
64b9b532c0
Merge pull request #10387 from filecoin-project/feat/lotus-badger-gc
...
feat:splitstore:Badger GC of hotstore command
2023-03-07 08:52:15 +01:00
Aayush Rajasekaran
12496e5631
Merge pull request #10389 from filecoin-project/asr/fix-eth-api-genesis
...
fix: EthAPI: Correctly get parent hash
2023-03-06 09:15:48 -05:00
Aayush
920fdfdf85
fix: EthAPI: Correctly get parent hash
2023-03-03 16:42:57 -05:00
zenground0
71b21db0d9
chain prune hot -- hotstore online gc
2023-03-03 11:14:52 -05:00
Aayush
cfb5eac015
fix: EthAPI: Make newEthBlockFromFilecoinTipSet faster and correct
2023-03-02 12:34:09 -05:00
Aayush
19f1ad2762
Merge branch 'releases' into asr/merge-release-into-master
2023-03-01 14:18:35 -05:00
Travis Person
814c146626
feat: stmgr: cache migrated stateroots
2023-03-01 16:17:34 +00:00
Phi
4c7d9ad30e
Tune down ParallelCheckLimit
...
Tune down ParallelCheckLimit config default
2023-02-28 11:46:11 +01:00
Aayush
17e680ea3c
fix: EthGetBalance: lookup balance at correct state
2023-02-27 14:43:57 -05:00
Aayush Rajasekaran
9fba14b6b1
Merge pull request #10333 from filecoin-project/asr/overestimate
...
feat: gas: overestimate around the Hygge upgrade
2023-02-27 10:55:09 -05:00
Aayush Rajasekaran
8975f0b753
feat: EthAPI: Add FilecoinAddressToEthAddress ( #10343 )
2023-02-24 14:19:52 -05:00
Aayush
35c90d34d6
feat: gas: overestimate around the Hygge upgrade
2023-02-23 09:35:01 -05:00
Ian Davis
5d3314f121
Touch source to trigger CI
2023-02-23 13:02:20 +00:00
Łukasz Magiera
ea57a1aec3
Merge remote-tracking branch 'origin/master' into hsanjuan/chain-export-range-rebased
2023-02-23 13:08:14 +01:00
Aayush
984b4c78cb
Merge branch 'release/v1.20.0' into asr/merge-release-into-master
2023-02-17 16:08:22 -05:00
Aayush Rajasekaran
e3e78f1dc9
Merge pull request #10306 from filecoin-project/steb/error-cleanup
...
fix: eth: cleanup error cases
2023-02-17 15:22:07 -05:00
Steven Allen
bad41c247a
fix: eth: cleanup error cases
...
1. Return an error on gas estimation failure instead of logging.
2. Return early when processing signed messages on failure instead of
continuing.
2023-02-17 12:04:01 -08:00
Aayush Rajasekaran
efcdec6517
Merge pull request #10300 from filecoin-project/steb/fix-eth-nonce
...
fix: eth: return the correct nonce from EthGetTransactionCount
2023-02-17 14:45:45 -05:00
Aayush Rajasekaran
258df7691f
Merge pull request #10305 from filecoin-project/asr/bump-go-libipfs-for-release
...
chore: deps: bump go-libipfs to v0.4.1
2023-02-17 14:34:12 -05:00
Steven Allen
6c0f4cbd74
nit: actually, don't use blocks
2023-02-17 11:18:51 -08:00
Steven Allen
49cd428c43
nit: put evm case in a block
2023-02-17 11:17:35 -08:00
Steven Allen
a3bc65ba05
fix: eth: return the correct nonce from EthGetTransactionCount
...
EVM contracts track this number internally.
fixes https://github.com/filecoin-project/lotus/issues/10255
2023-02-17 10:51:42 -08:00
Steven Allen
30615a4ed6
feat: eth: return revert data on failed gas estimation ( #10298 )
...
Unfortunately, we need to execute the message twice to get this (unless
we want to change some APIs). But it's unlikely to be a performance
issue and will definitely help people debug failures.
2023-02-17 10:36:30 -08:00
Jorropo
7a4205ac36
chore: node: migrate go-bitswap to go-libipfs/bitswap
...
This was migrated in https://github.com/ipfs/go-libipfs/pull/63 .
(cherry picked from commit d060df2fb9
)
2023-02-17 18:46:17 +01:00
Jorropo
2d3065ae8e
chore: all: bump go-libipfs to replace go-block-format
...
Includes changes from:
- https://github.com/ipfs/go-block-format/pull/37
- https://github.com/ipfs/go-libipfs/pull/58
(cherry picked from commit f572852d06
)
2023-02-17 18:46:11 +01:00
Steven Allen
00b6d06041
feat: eth: parse revert data ( #10295 )
...
We don't really want to do this in the FVM because it's Ethereum
specific, but this makes sense to do in the Ethereum API.
See:
See https://docs.soliditylang.org/en/latest/control-structures.html#panic-via-assert-and-error-via-require
2023-02-17 01:18:03 +00:00
Steven Allen
5854d72784
fix: eth: correctly decode EthGetStorageAt output ( #10284 )
...
* fix: eth: correctly decode EthGetStorageAt output
We cbor-encode it. Also:
1. Actually use the passed block param.
2. Check if the target actor is an EVM actor to avoid nonsense outputs.
fixes https://github.com/filecoin-project/ref-fvm/issues/1621
2023-02-16 16:36:52 -08:00
Aayush
1d0a524b88
feat: EthAPI: Add EthAddressToFilecoinAddress
2023-02-16 12:24:17 -05:00
Aayush
75c744a438
Merge branch 'release/v1.20.0'
2023-02-14 20:29:14 -05:00
Aayush
3f063f7cd7
fix: StorageKey is now fixed-size array
2023-02-14 19:04:43 -05:00
Hector Sanjuan
a2475bca94
range-export: write files to lotus repo path
2023-02-14 21:08:10 +01:00
Hector Sanjuan
be1614a042
range-export: check serverside that head > tail
2023-02-14 21:08:10 +01:00
Hector Sanjuan
ec01036871
Ranged export: remove non-internal ranged export method
...
Additionally, per feedback:
* Set "admin" permissions
* Remove from v0api
2023-02-14 21:08:10 +01:00
Hector Sanjuan
1bb698619c
Ranged-export: Remove CachingBlockstore
...
The improvements in the range-export code lead to avoid reading most blocks
twice, as well as to allowing some blocks to be written to disk multiple times.
The cache hit-rate went down from being close to 50% to a maximum of 12% at
the very end of the export. The reason is that most CIDs are never read twice
since they are correctly tracked in the CID set.
These numbers do not support the maintenance of the CachingBlockstore
code. Additional testing shows that removing it has similar memory-usage
behaviour and about 5 minute-faster execution (around 10%).
Less code to maintain and less options to mess up with.
2023-02-14 21:08:10 +01:00
Hector Sanjuan
fa93c23813
Chain ranged export: rework and address current shortcomings
...
This commit moderately refactors the ranged export code. It addresses several
problems:
* Code does not finish cleanly and things hang on ctrl-c
* Same block is read multiple times in a row (artificially increasing cached
blockstore metrics to 50%)
* It is unclear whether there are additional races (a single worker quits
when reaching height 0)
* CARs produced have duplicated blocks (~400k for an 80M-blocks CAR or
so). Some blocks appear up to 5 times.
* Using pointers for tasks where it is not necessary.
The changes:
* Use a FIFO instead of stack: simpler implementation as its own type. This
has not proven to be much more memory-friendly, but it has not made things
worse either.
* We avoid a probably not small amount of allocations by not using
unnecessary pointers.
* Fix duplicated blocks by atomically checking+adding to CID set.
* Context-termination now works correctly. Worker lifetime is correctly tracked and all channels
are closed, avoiding any memory leaks and deadlocks.
* We ensure all work is finished before finishing, something that might have
been broken in some edge cases previously. In practice, we would not have
seen this except perhaps in very early snapshots close to genesis.
Initial testing shows the code is currently about 5% faster. Resulting
snapshots do not have duplicates so they are a bit smaller. We have manually
verified that no CID is lost versus previous results, with both old and recent
snapshots.
2023-02-14 21:08:10 +01:00
Ian Davis
35730637dc
fix: tracer: emit raw peer ids for compatibility with libp2p tracer
2023-02-14 16:17:03 +00:00
Łukasz Magiera
7150243cda
feat: ethrpc: Support newPendingTransactions in eth_subscribe ( #10269 )
2023-02-14 16:15:42 +00:00
frrist
21efd481d8
First efficient ranged-export implementation by @frisst
...
This first commit contains the first and second implementation stabs (after
primary review by @hsanjuan), using a stack for task buffering.
Known issues: ctrl-c (context cancellation) results in the export code getting
deadlocked. Duplicate blocks in exports. Duplicate block reads from store.
Original commit messages:
works
works against mainnet and calibnet
feat: add internal export api method
- will hopfully make things faster by not streaming the export over the json rpc api
polish: better file nameing
fix: potential race in marking cids as seen
chore: improve logging
feat: front export with cache
fix: give hector a good channel buffer on this shit
docsgen
2023-02-14 15:41:10 +01:00
ychiao
0d92c746bd
Eth JSON-RPC: populate reward in eth_feeHistory ( #10245 )
...
Co-authored-by: Łukasz Magiera <magik6k@users.noreply.github.com>
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2023-02-14 01:02:37 +00:00
Steven Allen
f427c2b566
fix: eth: correctly convert filecoin message <-> eth txn ( #10257 )
...
1. We do allow deploying with empty initcode.
2. Make sure that the encoded "code" is non-empty, if specified.
Basically, this makes everything consistent (and it's how I specified it
in the FIP).
2023-02-13 10:33:59 -08:00
Łukasz Magiera
7486227c27
Merge remote-tracking branch 'origin/release/v1.20.0' into asr/merge-release-into-master
2023-02-13 13:14:09 +01:00
Raúl Kripalani
8ff55c027e
Merge branch 'release/v1.20.0' into asr/merge-release-into-master
2023-02-13 11:45:09 +00:00
Steven Allen
b765112896
fix: correctly handle ethGetCode edge-cases
...
1. If the actor is a non-evm actor, return "nothing".
2. Correctly handle missing actors.
3. Handle self-destructed actors (they'll return "null").
fixes https://github.com/filecoin-project/ref-fvm/issues/1641
2023-02-12 20:38:47 -08:00
Steven Allen
a085eb1593
fix: eth: correctly return empty bytecode after selfdestruct
2023-02-12 19:31:56 -08:00
raulk
37e1ac5d93
eth: FIP-0055: implement final version of transitory delegated signature. ( #10239 )
2023-02-12 21:08:42 +00:00
Aayush
63b03a48d0
Merge branch 'release/v1.20.0' into asr/merge-release-into-master
2023-02-10 18:39:51 -05:00
Raúl Kripalani
6a76bbb6e3
improve TODO.
2023-02-10 22:46:57 +00:00
ychiao
8cded9f8d2
add todo
2023-02-10 17:34:53 -05:00
Raúl Kripalani
778768dbf7
eth_feeHistory: parse block param correctly.
2023-02-10 22:29:52 +00:00
ychiao
db749b8fc7
Merge branch 'release/v1.20.0' into fix/EthUint64-args
2023-02-10 17:26:38 -05:00
ychiao
3c580403c1
implement itest and handle optional params
2023-02-10 13:33:59 -05:00
Steven Allen
b0d917d542
fix: make gen
2023-02-10 09:32:59 -08:00
Steven Allen
cc302dd68b
fix: eth: log on unexpected events
...
We can remove these later as we add more event types, but this will aid
in debugging.
2023-02-10 07:59:47 -08:00
Steven Allen
ece8f25511
fix: eth: strict event parsing
...
We now enforce the following rules:
1. No duplicate topics or data.
2. Topics must have 32 byte keys.
3. Topics may not be skipped. (e.g., no t1 & t3 without a t2).
4. Raw codecs.
We _don't_ require that topics/data be emitted in any specific order.
We _skip_ events with unknown keys. We _drop_ events that violate the
above rules.
2023-02-10 07:41:29 -08:00
Steven Allen
f1381ad535
refactor: use EthHash for event topics
...
This ensures they're always 32 bytes and padded, as required.
2023-02-10 07:41:29 -08:00
Łukasz Magiera
ec1b2b959a
Merge pull request #9973 from placer14/mg/chore/expose-compaction-poolsize-envvar
...
feat: blockstore: Envvar can adjust badger compaction worker poolsize
2023-02-10 11:38:08 +01:00
Łukasz Magiera
088d231cda
fix: Don't call WalletExport in msg signing flows
2023-02-10 02:37:59 +01:00
Jiaying Wang
1c13a591e9
Merge pull request #10223 from filecoin-project/feat/ethtx-fixes
...
fix: ethrpc: Add missing fields to EthTx
2023-02-09 13:13:26 -05:00
Łukasz Magiera
75f9b7d040
Merge pull request #10119 from filecoin-project/gstuart/tx-hash-on-simport-napshot
...
feat: eth: populate tx hash database on startup
2023-02-09 19:06:20 +01:00
Łukasz Magiera
a32db5ff69
Merge pull request #10186 from filecoin-project/nonsense-patch-1
...
LOTUS_FEVM_ENABLEETHRPC: Fix env variable name in error
2023-02-09 17:56:27 +01:00
Aayush Rajasekaran
030b40b2a0
Merge pull request #10211 from filecoin-project/fix/ethsub-noarray
...
fix: ethrpc: Don't send sub notifs in array
2023-02-09 11:55:46 -05:00
Łukasz Magiera
cb8e2836bb
Merge pull request #10184 from filecoin-project/asr/merge-release-into-master
...
chore: merge release/v1.20.0 into master
2023-02-09 16:41:58 +01:00
Łukasz Magiera
e321761a72
ethrpc: Add missing fields to EthTx
2023-02-09 14:26:13 +01:00
Łukasz Magiera
9339267e6e
fix: ethrpc: emit correct bloom filters ( #10194 )
2023-02-08 23:14:53 +00:00
Łukasz Magiera
3516c7674b
fix: ethrpc: Don't send sub notifs in array
2023-02-08 15:55:38 +01:00
Steven Allen
89499bfd40
fvm: chore: update FVM
...
This:
1. Updates the builtin actors bundle (for actors v10).
2. Updates the event entry type to include the codec.
3. Removes the cbor encoding and zero trimming from event data.
I've chose to:
1. _Not_ add codec handling to the event filtering system for now.
2. _Skip_ events with unexpected codecs.
We don't actually _allow_ these events in the FVM right now, and it
simplifies the implementation.
However, I _am_ recording the codecs in the database so we don't have to
migrate it later.
2023-02-07 18:15:40 -08:00
Aayush Rajasekaran
693f230fbb
Merge branch 'release/v1.20.0' into asr/merge-release-into-master
2023-02-07 11:03:01 -05:00
Łukasz Magiera
e0d92a13a7
Merge pull request #10172 from ribasushi/fix/respect_nofsync
...
fix: extend LOTUS_CHAIN_BADGERSTORE_DISABLE_FSYNC to the markset
2023-02-07 03:18:58 +01:00
Łukasz Magiera
5dc56841ea
fix: ethtypes: Correct 'no transactions' hash in NewEthBlock
2023-02-06 17:17:19 +01:00
Anton Evangelatov
ad457202dd
LOTUS_FEVM_ENABLEETHRPC: Fix env variable name in error
2023-02-06 15:25:51 +01:00
Łukasz Magiera
6851b6a523
Merge remote-tracking branch 'origin/release/v1.20.0' into fix/eth-orpc-validate
2023-02-06 10:41:52 +01:00
Travis Person
03b419e3d4
feat: compute a better gas limit for recursive external contract calls
2023-02-03 20:40:18 +00:00
Aayush
f291572b4a
Merge branch 'release/v1.20.0' into asr/merge-release-into-master
2023-02-03 09:27:04 -05:00
raulk
b46258d0bf
feat: evm: align events implementation with FIP-0049 and FIP-0054. ( #10152 )
...
- Event keys are now t1, t2, t3, t4 for topics; and d for data.
- ref-fvm no longer stores events in the blockstore for us. It just
returns events to the client, who is now responsible for handling
them as it wishes / according to its configuration.
- Add a flag to VMOpts to have the events AMT be written in the blockstore.
- Add a flag to the ChainStore to advertise to the rest of the system
if the ChainStore is storing events.
- Enable that flag if the EthRPC is enabled (can also add an explicit
configuration flag if wanted).
2023-02-02 19:10:30 -08:00
Łukasz Magiera
8ce0b984b7
itests: Fix TestEthFilterAPIDisabledViaConfig
2023-02-02 15:59:55 +01:00
Łukasz Magiera
fe1e0974cb
feat: ethrpc: Support filtering by address in subscribe
2023-02-02 14:46:36 +01:00
Łukasz Magiera
3d207de6aa
node builder: Use gateway eth module in lite mode
2023-02-02 13:39:40 +01:00
Łukasz Magiera
a6a2f0dbae
gateway: Support all EthModule methods
2023-02-02 13:37:31 +01:00
Peter Rabbitson
818b3b8daf
fix: extend LOTUS_CHAIN_BADGERSTORE_DISABLE_FSYNC to the markset
...
Without doing this walking a badger markset on a non-nvme knocks the
node hopelessly out of sync during a compaction.
2023-02-01 21:00:39 +01:00
Łukasz Magiera
7060150bdc
Merge pull request #10149 from FlattestWhite/richard/make-user-agent-dependency-injectable
...
feat: Allow libp2p user agent to be overriden
2023-02-01 19:12:08 +01:00
Ian Davis
d29a244064
Merge remote-tracking branch 'origin/release/v1.20.0' into iand/eth-openrpc-validate
2023-02-01 16:19:17 +00:00
Jennifer Wang
5d87fc8278
fix: should not serve non v0 api in v1
2023-01-31 17:06:02 -05:00
Maciej Witowski
dcbfca53d9
Improve the error message
2023-01-31 18:54:05 +01:00
Maciej Witowski
5f2ef98de6
Move assigning from
address to the API level
2023-01-31 18:28:12 +01:00
Richard Guan
45ceb5d297
move UserAgentOption upwards
2023-01-31 21:46:24 +09:00
Richard Guan
a8dace0f23
make libp2p user agent overridable
2023-01-31 21:40:55 +09:00
Łukasz Magiera
ad14d71978
eth rpc: Params are optional in eth_subscribe
2023-01-31 11:08:51 +01:00
Łukasz Magiera
965b1cf03c
itests: Fix TestEthSubscribeLogs
2023-01-31 10:28:12 +01:00
Łukasz Magiera
1286d76988
gateway: eth_subscribe support
2023-01-31 10:28:12 +01:00
Łukasz Magiera
6491becbe1
rpc: Switch eth_subscribe to reverse calls
2023-01-31 10:28:12 +01:00
Geoff Stuart
e0326d9d39
Populate transaction hash database if the database has not been set up before
2023-01-30 16:33:04 -05:00
Geoff Stuart
af72e6f6ac
Refactor: Unify EthTx to FilecoinMessage methods v2 ( #10095 )
...
* Refactor: Unify EthTx to FilecoinMessage methods
* Filecoin messages can again be converted to Eth Txs
* All BLS messages should calculated tx hash with unsigned message
* Refactor newEthTxReceipt
* fill in from and to for non-eth transactions
* Hoist nil check out of newEthTxFromMessageLookup
---------
Co-authored-by: Aayush <arajasek94@gmail.com>
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
2023-01-30 18:40:14 +00:00
Jorropo
d060df2fb9
chore: node: migrate go-bitswap to go-libipfs/bitswap
...
This was migrated in https://github.com/ipfs/go-libipfs/pull/63 .
2023-01-27 23:10:44 +01:00
Steven Allen
c93717bf77
fix: don't replace the method in EthSendRawTransaction ( #10129 )
...
This will just cause signature validation to fail.
2023-01-26 09:22:06 -08:00
Jorropo
f572852d06
chore: all: bump go-libipfs to replace go-block-format
...
Includes changes from:
- https://github.com/ipfs/go-block-format/pull/37
- https://github.com/ipfs/go-libipfs/pull/58
2023-01-26 17:03:18 +01:00
Ian Davis
4500c02e49
Merge branch 'release/v1.20.0' into iand/eth-openrpc-validate
2023-01-26 14:23:42 +00:00
Ian Davis
c82dccc76c
Merge branch 'release/v1.20.0' into iand/issue-9849-realtime
2023-01-26 12:11:14 +00:00
Ian Davis
7586710395
Fix panic in EthGetCode
2023-01-26 12:10:42 +00:00
Ian Davis
a9cd76907e
Merge branch 'release/v1.20.0' into iand/eth-openrpc-validate
2023-01-26 11:35:33 +00:00
Geoff Stuart
c6829a9d0e
Merge pull request #10113 from filecoin-project/feat/web3_clientVersion
...
Eth JSON-RPC: implement web3_clientVersion
2023-01-25 15:11:30 -05:00
Aayush
7aed7d3fd0
fix: EthAPI: Handle EthCall return correctly
2023-01-25 11:36:59 -05:00
Ian Davis
b38d203e83
Remove debug logging
2023-01-25 09:44:52 +00:00
ychiao
358964d2c8
fix lint
2023-01-24 22:59:46 -05:00
ychiao
ee6af9de61
Eth JSON-RPC: implement web3_clientVersion
2023-01-24 22:56:04 -05:00
Aayush
8864782750
fix: EthAPI: Drop hack in GetStorageAt
2023-01-24 13:18:13 -05:00
Ian Davis
8daf22c3ff
Test and fix eth_FeeHistory
2023-01-24 11:27:18 +00:00
Aayush
65ac5669a9
Merge branch 'master' into asr/merge-release-into-master
2023-01-23 12:37:24 -05:00
Ian Davis
7d1bd1d5ab
Use gojsonschema
2023-01-23 16:50:40 +00:00
Ian Davis
c6d279c853
Decode topic values in EthGetTransactionReceipt
2023-01-23 14:43:36 +00:00
Ian Davis
d9261b6e2f
itests: validate responses from ethereum json-rpc api
2023-01-23 14:37:51 +00:00
Ian Davis
ddd5ff9c42
fix: event filters use cbor encoding internally ( #10085 )
2023-01-23 14:14:25 +00:00
Łukasz Magiera
53015dc3ee
Merge pull request #9981 from filecoin-project/masih/dep-up-dixprov
...
chore: market: Upgrade to index-provider 0.10.0
2023-01-23 12:53:23 +01:00
Aayush
4f199ada40
Merge branch 'release/v1.20.0' into asr/merge-release-into-master
2023-01-20 17:32:29 -05:00
Ian Davis
c5ed5dd254
itests: add event matrix tests for realtime eth filters and subscriptions
2023-01-20 14:01:25 +00:00
Raúl Kripalani
21c93f1dc1
Merge branch 'release/v1.20.0' into iand/issue-9849-filters
2023-01-20 01:11:31 +00:00
Jiaying Wang
b08b63d4ab
Merge pull request #10077 from filecoin-project/gstuart/eth-event-config
...
feat: Events API enabled by default if EnableEthRPC is true
2023-01-19 19:56:03 -05:00
Jennifer Wang
63d4c10b9e
remove extra event doc
2023-01-19 19:53:21 -05:00
Geoff Stuart
6601d9031d
Set default path for eth event db, set it to enabled by default if EnableEthRPC is set
2023-01-19 18:40:28 -05:00
Shrenuj Bansal
522e96f016
fix: msg signing with delegated keys and send cli changes ( #10056 )
...
* fix msg signing with delegated keys and send cli changes
* make gen and docsgen
* address comments
2023-01-19 17:57:48 -05:00
Jiaying Wang
2335bed58a
Revert "fix: should not serve non v0 apis in v0" ( #10073 )
2023-01-19 20:36:03 +00:00
Łukasz Magiera
eaccb571a5
fix: config: Fix eth rpc typo ( #10076 )
2023-01-19 20:35:19 +00:00
Łukasz Magiera
e194cbc715
impl: Cleanup EthTxHashManager handling
2023-01-19 19:30:18 +01:00
Łukasz Magiera
66f5ee4ae9
config: Fevm.EnableEthPRC
2023-01-19 18:31:17 +01:00
Jennifer Wang
901bb153d0
fix: should not serve non v0 api in v1
2023-01-19 11:06:04 -05:00
Jennifer Wang
1724d1666e
fix: should not serve non v0 api in v1
2023-01-19 11:02:09 -05:00
Ian Davis
58587a7956
Remove unused code
2023-01-19 13:06:07 +00:00
Ian Davis
a08b557938
Merge branch 'release/v1.20.0' into iand/issue-9849-filters
2023-01-19 13:01:12 +00:00
Ian Davis
ca5cab4c43
Cleanup and fix eth filter tests
2023-01-19 12:58:23 +00:00
Ian Davis
5569c3971b
Fix filters with alternate topic values
2023-01-19 12:22:37 +00:00
Ian Davis
6f66ef595e
Add filter block range tests
2023-01-19 11:49:07 +00:00
Geoff Stuart
5133b9da94
Add EthGetMessageCidByTransactionHash, fix EthGetTransactionHashByCid
2023-01-18 17:48:10 -05:00
Ian Davis
061e8cca1f
Add itest for EthGetLogs filter combinations
2023-01-18 17:33:54 +00:00
Aayush
e715384173
Merge branch 'release/v1.20.0' into asr/merge-release-into-master
2023-01-16 10:51:22 -05:00
Geoff Stuart
72f42505b9
Explain config more clearly
2023-01-16 08:17:34 -05:00
Geoff Stuart
6b0f1116ce
Remove maybe unnecessary check
2023-01-16 07:08:22 -05:00
Geoff Stuart
f8121c8f1c
Add gc for eth tx database
2023-01-16 07:04:20 -05:00
Geoff Stuart
f8dee0983a
review fixes
2023-01-16 01:56:55 -05:00
Geoff Stuart
a8436074a6
Store mapping from hashes for Ethereum transactions to Filecoin Message Cids
2023-01-16 01:17:56 -05:00
Jennifer Wang
51d77d408b
add bundle dev/20230114-pre-rc.2
2023-01-14 01:41:46 -05:00
vyzo
859cdca4f7
update go-state-types
...
use CreateExternal
use CreateExternal in itest evm deployment
add missing import
update gst
2023-01-14 01:11:11 -05:00
Jennifer Wang
427fbdb8a9
Merge branch 'release/v1.20.0' into jen/resolveconflict
2023-01-13 21:50:57 -05:00
raulk
cdf3812e40
NV18: Filecoin EVM runtime + Actor Events + EthAccount + EAM + f4 addressing ( #9998 )
...
Co-authored-by: Steven Allen <steven@stebalien.com>
Co-authored-by: Raul Kripalani <raulk@users.noreply.github.com>
Co-authored-by: Kevin Li <ychiaoli18@users.noreply.github.com>
Co-authored-by: vyzo <vyzo@hackzen.org>
Co-authored-by: Ian Davis <nospam@iandavis.com>
Co-authored-by: Aayush Rajasekaran <arajasek94@gmail.com>
Co-authored-by: Jiaying Wang <42981373+jennijuju@users.noreply.github.com>
Co-authored-by: Jennifer Wang <jiayingw703@gmail.com>
Co-authored-by: Geoff Stuart <geoff.vball@gmail.com>
Co-authored-by: Shrenuj Bansal <shrenuj.bansal@protocol.ai>
Co-authored-by: Shrenuj Bansal <108157875+shrenujbansal@users.noreply.github.com>
Co-authored-by: Geoff Stuart <geoffrey.stuart@protocol.ai>
Co-authored-by: Aayush Rajasekaran <aayushrajasekaran@Aayushs-MacBook-Pro.local>
Co-authored-by: ZenGround0 <5515260+ZenGround0@users.noreply.github.com>
Co-authored-by: zenground0 <ZenGround0@users.noreply.github.com>
2023-01-13 19:11:13 +00:00
Łukasz Magiera
574b684396
address review
2023-01-13 20:08:35 +01:00
Łukasz Magiera
9b7c506de0
lite node: Use full.EthEventAPI provided by gateway in lite mode
2023-01-13 20:04:42 +01:00
Łukasz Magiera
12c23d7d60
api: Drop EthModuleDummy
2023-01-13 20:04:42 +01:00
Łukasz Magiera
708618d11c
feat: gateway: eth_ api support
2023-01-13 20:04:41 +01:00
Raúl Kripalani
6de2aca8ae
change ResolveToKeyAddr => ResolveToDeterministicAddr + friends.
2023-01-13 01:44:39 +00:00
raulk
014d95454b
address review comments from @magik6k on #9617 ( #9997 )
2023-01-12 19:11:48 +00:00
raulk
3ef32395f3
clean up ethtypes: rationalize ethtypes.EthAddressFromFilecoinAddress and conversion methods ( #9992 )
2023-01-12 17:09:21 +00:00
ychiao
105a1259bc
Eth JSON-RPC: use ToFilecoinAddress() to get f4 addr and validate v sig + cleanups ( #9970 )
...
Co-authored-by: raulk <raul@protocol.ai>
2023-01-12 14:55:07 +00:00
Raúl Kripalani
8512bbc45b
drop f099 eth_call hack.
...
We now create the 0x0 Eth null address on genesis as an EthAccount,
so using the 0x0 Eth null address is guaranteed to work.
2023-01-12 08:50:38 +00:00
Raúl Kripalani
1e0c78098c
constant for Event AMT bitwidth.
2023-01-12 08:50:38 +00:00
Raúl Kripalani
6c0ddd4ec9
fix typos.
2023-01-12 08:50:38 +00:00
Raúl Kripalani
8ef17332ba
{predictable=>delegated} addresses.
2023-01-12 08:50:38 +00:00
Łukasz Magiera
9a46682d9d
Merge pull request #9481 from consensus-shipyard/adlrocha/cns-iface-master
...
IPC: Abstract common consensus functions and consensus interface
2023-01-11 14:49:27 +01:00
Masih H. Derkani
45667b7391
Upgrade to index-provider 0.10.0
...
Upgrade to the latest index-provider and as a result also upgrade
go-fil-markets.
Note that the index-provider go module is renamed and moved to `ipni`
GitHub org.
2023-01-10 13:08:04 +00:00
Jennifer Wang
cb49edf29d
update embryo to placehodler
2023-01-09 22:23:55 -05:00
Mike Greenberg
a4a4e04c5e
feat(blockstore): Envvar can adjust badger compaction worker poolsize
2023-01-06 17:33:25 -05:00
hanabi1224
6b14b0536e
fix: error checks
2023-01-04 20:10:21 +08:00
hanabi1224
83554afebc
Merge remote-tracking branch 'origin/master' into close-write
2023-01-02 16:42:21 +08:00
Aayush
a5851a1763
Merge branch 'master' into feat/nv18-fevm
2022-12-23 16:37:26 -05:00
Raúl Kripalani
a22518d96d
remove unused var.
2022-12-23 18:21:40 +00:00
Raúl Kripalani
a469840290
merge ntwk/wallaby into feat/nv18-fevm.
...
Unfortunately some important changes to make this branch
consistent and functional only existed on the wallaby branch.
So this commit brings them in sync.
2022-12-23 18:20:46 +00:00
Raúl Kripalani
f44bd27f7b
fix: eth_blockNumber: make it aware of null rounds.
2022-12-23 18:06:33 +00:00
Raúl Kripalani
c7efaaad7e
refine docs.
2022-12-23 17:20:57 +00:00
Raúl Kripalani
9505ac88ba
add docs.
2022-12-23 17:20:57 +00:00
Raúl Kripalani
b8b3b5d48b
fix: Eth JSON-RPC API: eth_getTransactionReceipt logs-related fixes.
...
Hardhat doesn't like logs: null in transaction receipts when no logs
were emitted. Wants empty array.
Size logsBloom correctly.
2022-12-23 17:20:57 +00:00
ychiao
60c9832429
fix nonce
2022-12-23 17:20:57 +00:00
Raúl Kripalani
4411fd7f81
eth_getTransactionByHash: return nil in some fields when tx is in mpool.
2022-12-23 17:20:57 +00:00
Raúl Kripalani
7ed79fece6
fix: eth_getTransactionByHash: return hash.
2022-12-23 17:20:57 +00:00
Aayush
9d3e50f140
feat: implement and test the v18 migration
2022-12-22 13:05:00 -05:00
Raúl Kripalani
bb5cb19607
fix: Eth JSON-RPC API: eth_getTransactionByHash should return nil when not found.
2022-12-22 11:47:46 +00:00
raulk
e7aa7cb04f
add a basic FEVM integration test. ( #9922 )
...
* add a basic FEVM integration test.
Exercises f4 addresses, placeholder transitions, Ethereum Account.
* remove unused parameter from newEthTxFromFilecoinMessageLookup.
* break when found in newEthTxFromFilecoinMessageLookup.
* fixup test.
* lint and gen.
* move test to itests root package.
Co-authored-by: Shrenuj Bansal <shrenuj.bansal@protocol.ai>
2022-12-21 15:12:07 -05:00
Shrenuj Bansal
3d3bce6702
Merge pull request #9897 from filecoin-project/sbansal/eth-state-cli
...
feat: cli: Add cli to inspect Eth addresses and simulate calls
2022-12-19 14:50:52 -05:00
ychiao
20f27af97e
eth: rpc: various Ethereum JSON-RPC API fixes ( #9837 )
...
Co-authored-by: Raúl Kripalani <raul@protocol.ai>
Fixes https://github.com/filecoin-project/ref-fvm/issues/1016
Fixes https://github.com/filecoin-project/ref-fvm/issues/1158
Fixes https://github.com/filecoin-project/ref-fvm/issues/1196
Fixes https://github.com/filecoin-project/ref-fvm/issues/1269
Fixes https://github.com/filecoin-project/lotus/issues/9820
2022-12-19 16:45:32 +00:00
Łukasz Magiera
156ba420c3
fix: splitstore: Don't deadlock in mpool protector
2022-12-17 13:14:50 +01:00
Geoff Stuart
92f3a7b050
Merge branch 'feat/nv18-fevm' into feat/nv18-events
2022-12-16 16:27:14 -05:00
Geoff Stuart
bc7c190db0
Move all eth stuff into ethtypes
2022-12-16 13:48:06 -05:00
Shrenuj Bansal
d71f5a7d12
Add cli to inspect Eth addresses and simulate calls
2022-12-16 12:54:50 -05:00
Aayush
7ea690d4be
Merge branch 'master' into feat/nv18-fevm
2022-12-16 11:52:41 -05:00
hanabi1224
6ae7cdab64
call Stream.CloseWrite right after writing
2022-12-16 17:22:53 +08:00
Geoff Stuart
88d59f6a5f
Set notifications for SIGTERM and SIGINT when we start the cli
2022-12-15 12:54:41 -05:00