Skip to content

Commit

Permalink
Problem: block-stm don't do pre-estimation
Browse files Browse the repository at this point in the history
  • Loading branch information
yihuang committed Sep 11, 2024
1 parent 13360a7 commit 00dfb81
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 29 deletions.
24 changes: 12 additions & 12 deletions app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -422,18 +422,6 @@ func New(

app.SetDisableBlockGasMeter(true)

if blockSTMEnabled {
sdk.SetAddrCacheEnabled(false)
workers := cast.ToInt(appOpts.Get(srvflags.EVMBlockSTMWorkers))
if workers == 0 {
workers = stdruntime.NumCPU()
}
logger.Info("block-stm executor enabled", "workers", workers)
app.SetTxExecutor(evmapp.STMTxExecutor(app.GetStoreKeys(), workers))
} else {
app.SetTxExecutor(evmapp.DefaultTxExecutor)
}

// init params keeper and subspaces
app.ParamsKeeper = initParamsKeeper(appCodec, cdc, keys[paramstypes.StoreKey], tkeys[paramstypes.TStoreKey])

Expand Down Expand Up @@ -1004,6 +992,18 @@ func New(
app.ScopedICAControllerKeeper = scopedICAControllerKeeper
// this line is used by starport scaffolding # stargate/app/beforeInitReturn

if blockSTMEnabled {
sdk.SetAddrCacheEnabled(false)
workers := cast.ToInt(appOpts.Get(srvflags.EVMBlockSTMWorkers))
if workers == 0 {
workers = stdruntime.NumCPU()
}
logger.Info("block-stm executor enabled", "workers", workers)
app.SetTxExecutor(evmapp.STMTxExecutor(app.GetStoreKeys(), workers, app.EvmKeeper))
} else {
app.SetTxExecutor(evmapp.DefaultTxExecutor)
}

return app
}

Expand Down
2 changes: 1 addition & 1 deletion app/bench_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ type TestAccount struct {
// pass `nil` to db to use memiavl
func benchmarkERC20Transfer(b *testing.B, db dbm.DB, appOpts servertypes.AppOptions) {
txsPerBlock := 5000
accounts := 100
accounts := 1
gasPrice := big.NewInt(100000000000)
bigZero := big.NewInt(0)

Expand Down
5 changes: 3 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,7 @@ replace (
cosmossdk.io/client/v2 => github.com/crypto-org-chain/cosmos-sdk/client/v2 v2.0.0-20240902025731-535413db1bf4
cosmossdk.io/store => github.com/crypto-org-chain/cosmos-sdk/store v0.0.0-20240902025731-535413db1bf4
cosmossdk.io/x/tx => github.com/crypto-org-chain/cosmos-sdk/x/tx v0.0.0-20240902025731-535413db1bf4
github.com/cosmos/cosmos-sdk => github.com/crypto-org-chain/cosmos-sdk v0.50.6-0.20240902025731-535413db1bf4
github.com/cosmos/cosmos-sdk => github.com/yihuang/cosmos-sdk v0.43.0-beta1.0.20240911062414-2e8005ca9b12
)

replace (
Expand All @@ -270,12 +270,13 @@ replace (
// for go-ethereum
github.com/cockroachdb/pebble => github.com/cockroachdb/pebble v0.0.0-20230209160836-829675f94811
github.com/cometbft/cometbft-db => github.com/crypto-org-chain/cometbft-db v0.0.0-20231011055109-57922ac52a63
github.com/crypto-org-chain/go-block-stm => github.com/yihuang/go-block-stm v0.0.0-20240911061126-1f831176379f
// dgrijalva/jwt-go is deprecated and doesn't receive security updates.
// TODO: remove it: https://github.com/cosmos/cosmos-sdk/issues/13134
github.com/dgrijalva/jwt-go => github.com/golang-jwt/jwt/v4 v4.4.2
github.com/ethereum/go-ethereum => github.com/crypto-org-chain/go-ethereum v1.10.20-0.20240425065928-ebb09502e7a7
// block-stm branch
github.com/evmos/ethermint => github.com/crypto-org-chain/ethermint v0.6.1-0.20240815051559-fe3f4fd535d7
github.com/evmos/ethermint => github.com/yihuang/ethermint v0.6.1-0.20240911061215-6fd80d4212fd
// Fix upstream GHSA-h395-qcrw-5vmq and GHSA-3vp4-m3rf-835h vulnerabilities.
// TODO Remove it: https://github.com/cosmos/cosmos-sdk/issues/10409
github.com/gin-gonic/gin => github.com/gin-gonic/gin v1.9.0
Expand Down
12 changes: 6 additions & 6 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -419,18 +419,12 @@ github.com/crypto-org-chain/btree v0.0.0-20240406140148-2687063b042c h1:MOgfS4+F
github.com/crypto-org-chain/btree v0.0.0-20240406140148-2687063b042c/go.mod h1:twD9XRA5jj9VUQGELzDO4HPQTNJsoWWfYEL+EUQ2cKY=
github.com/crypto-org-chain/cometbft-db v0.0.0-20231011055109-57922ac52a63 h1:R1QJ9a3XdYMSKo+1RdFifxb/g3lNypC52L/rpYrWoKo=
github.com/crypto-org-chain/cometbft-db v0.0.0-20231011055109-57922ac52a63/go.mod h1:rocwIfnS+kA060x64gkSIRvWB9StSppIkJuo5MWzL24=
github.com/crypto-org-chain/cosmos-sdk v0.50.6-0.20240902025731-535413db1bf4 h1:iWwxp02H5JnqCMFm0htX2B6twyob3Mhj+Vwz7PLtIQk=
github.com/crypto-org-chain/cosmos-sdk v0.50.6-0.20240902025731-535413db1bf4/go.mod h1:Rb43DdB0i/rKcCN69Tg2X3+zA4WhJ7MC8K3a6Ezh38E=
github.com/crypto-org-chain/cosmos-sdk/client/v2 v2.0.0-20240902025731-535413db1bf4 h1:wnjybA/Yl/KMa1ArcGH8yJhIoC6yA9Vx6JvcjfgdqYA=
github.com/crypto-org-chain/cosmos-sdk/client/v2 v2.0.0-20240902025731-535413db1bf4/go.mod h1:W5sR4asmVDUhJpEmuXTUBkk/yEefKlXTjVWcNciVSR0=
github.com/crypto-org-chain/cosmos-sdk/store v0.0.0-20240902025731-535413db1bf4 h1:RDwJHhg8/Yh0CXNB9gfSEEJgQR5fHogO1Kz5afKAOlI=
github.com/crypto-org-chain/cosmos-sdk/store v0.0.0-20240902025731-535413db1bf4/go.mod h1:gjE3DZe4t/+VeIk6CmrouyqiuDbZ7QOVDDq3nLqBTpg=
github.com/crypto-org-chain/cosmos-sdk/x/tx v0.0.0-20240902025731-535413db1bf4 h1:tsLL7ZWp9tHNTf0r9E5NoMjJyaM/NbpPJqRHxv5Kzak=
github.com/crypto-org-chain/cosmos-sdk/x/tx v0.0.0-20240902025731-535413db1bf4/go.mod h1:RTiTs4hkXG6IvYGknvB8p79YgjYJdcbzLUOGJChsPnY=
github.com/crypto-org-chain/ethermint v0.6.1-0.20240815051559-fe3f4fd535d7 h1:hSonxz4P02Nz4dbk2SotnxrhdnxjqMw5kwDOmY4X3+I=
github.com/crypto-org-chain/ethermint v0.6.1-0.20240815051559-fe3f4fd535d7/go.mod h1:LIHsU02uPdhpAyAMMaih0XFlNZsyF5GwiQHHZspI7Ow=
github.com/crypto-org-chain/go-block-stm v0.0.0-20240806075927-09a64748f883 h1:Oj7VvlK8iXRaugnpGA8CBXGrgkyigji+Ae5weSRD85I=
github.com/crypto-org-chain/go-block-stm v0.0.0-20240806075927-09a64748f883/go.mod h1:iwQTX9xMX8NV9k3o2BiWXA0SswpsZrDk5q3gA7nWYiE=
github.com/crypto-org-chain/go-ethereum v1.10.20-0.20240425065928-ebb09502e7a7 h1:V43F3JFcqG4MUThf9W/DytnPblpR6CcaLBw2Wx6zTgE=
github.com/crypto-org-chain/go-ethereum v1.10.20-0.20240425065928-ebb09502e7a7/go.mod h1:+a8pUj1tOyJ2RinsNQD4326YS+leSoKGiG/uVVb0x6Y=
github.com/danieljoos/wincred v1.2.0 h1:ozqKHaLK0W/ii4KVbbvluM91W2H3Sh0BncbUNPS7jLE=
Expand Down Expand Up @@ -1157,6 +1151,12 @@ github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q
github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q=
github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 h1:bAn7/zixMGCfxrRTfdpNzjtPYqr8smhKouy9mxVdGPU=
github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673/go.mod h1:N3UwUGtsrSj3ccvlPHLoLsHnpR27oXr4ZE984MbSER8=
github.com/yihuang/cosmos-sdk v0.43.0-beta1.0.20240911062414-2e8005ca9b12 h1:G7vSDNzXmnyrI+9QLipxe5YnAO8iiDLH0/OvqRVbgL8=
github.com/yihuang/cosmos-sdk v0.43.0-beta1.0.20240911062414-2e8005ca9b12/go.mod h1:Rb43DdB0i/rKcCN69Tg2X3+zA4WhJ7MC8K3a6Ezh38E=
github.com/yihuang/ethermint v0.6.1-0.20240911061215-6fd80d4212fd h1:92PpI5gxKROpHAG0LLTrZF1tYazpppVtt3sQlfrhZNw=
github.com/yihuang/ethermint v0.6.1-0.20240911061215-6fd80d4212fd/go.mod h1:oQc7FjBnM892vzqqHrDyaE7iAUOeQTKLXV7L2qk+sVw=
github.com/yihuang/go-block-stm v0.0.0-20240911061126-1f831176379f h1:G17UpSucfm3SPCXdkJMrsAXJyXDJHsD5zWiQ6GUCwZ4=
github.com/yihuang/go-block-stm v0.0.0-20240911061126-1f831176379f/go.mod h1:iwQTX9xMX8NV9k3o2BiWXA0SswpsZrDk5q3gA7nWYiE=
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
Expand Down
17 changes: 9 additions & 8 deletions gomod2nix.toml
Original file line number Diff line number Diff line change
Expand Up @@ -167,9 +167,9 @@ schema = 3
version = "v1.0.0-beta.5"
hash = "sha256-Fy/PbsOsd6iq0Njy3DVWK6HqWsogI+MkE8QslHGWyVg="
[mod."github.com/cosmos/cosmos-sdk"]
version = "v0.50.6-0.20240902025731-535413db1bf4"
hash = "sha256-7l0kxNsrW2TAuiOpDgy88L4WMibzPGbBNRpSUvayL1U="
replaced = "github.com/crypto-org-chain/cosmos-sdk"
version = "v0.43.0-beta1.0.20240911062414-2e8005ca9b12"
hash = "sha256-3xfXAbFniS6A7k2ODDLdZDxmdGX+JpjUAlLKsb/EImE="
replaced = "github.com/yihuang/cosmos-sdk"
[mod."github.com/cosmos/go-bip39"]
version = "v1.0.0"
hash = "sha256-Qm2aC2vaS8tjtMUbHmlBSagOSqbduEEDwc51qvQaBmA="
Expand Down Expand Up @@ -210,8 +210,9 @@ schema = 3
version = "v0.0.24"
hash = "sha256-4vUukHONOjNn0qfQr4esK6TWfPWsIp+rbdz65og84lw="
[mod."github.com/crypto-org-chain/go-block-stm"]
version = "v0.0.0-20240806075927-09a64748f883"
hash = "sha256-DuqcnTqpUVRxV+I+CaBuDg/1CLmMeXdw4VEFeuCsUbU="
version = "v0.0.0-20240911061126-1f831176379f"
hash = "sha256-lKkKqz9yb1Yto/TgTqTdFVIjUY6LlKM0knRqI1ne9Bg="
replaced = "github.com/yihuang/go-block-stm"
[mod."github.com/danieljoos/wincred"]
version = "v1.2.0"
hash = "sha256-LHcvTJCc8++bFndbd8ZgMSTe4L5h2C4rN+cSWHCz54Y="
Expand Down Expand Up @@ -259,9 +260,9 @@ schema = 3
hash = "sha256-lE4G5FaRb3MVi9FFVn+WlwsSTOB4SbjmVboKyQ5yB0A="
replaced = "github.com/crypto-org-chain/go-ethereum"
[mod."github.com/evmos/ethermint"]
version = "v0.6.1-0.20240815051559-fe3f4fd535d7"
hash = "sha256-/fK8x4+1nZ9VBQxTRRcjC0sM5BZ7powtPzxFDbLS7as="
replaced = "github.com/crypto-org-chain/ethermint"
version = "v0.6.1-0.20240911061215-6fd80d4212fd"
hash = "sha256-DkiP7b3LipbLnepybOWlvzhW6WhUeRWxkycPLnXdNg0="
replaced = "github.com/yihuang/ethermint"
[mod."github.com/fatih/color"]
version = "v1.16.0"
hash = "sha256-Aq/SM28aPJVzvapllQ64R/DM4aZ5CHPewcm/AUJPyJQ="
Expand Down

0 comments on commit 00dfb81

Please sign in to comment.