Skip to content

Commit 5e98660

Browse files
djm07073beer-1
andauthored
fix: contractsgen script to compile independent bytecode with machine (#154)
* fix: contractsgen script to compile independent bytecode with machine * contractsgen * fix tests --------- Co-authored-by: beer-1 <[email protected]>
1 parent bae30d1 commit 5e98660

File tree

17 files changed

+59
-23
lines changed

17 files changed

+59
-23
lines changed

Diff for: indexer/bloom.go

+11-2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ package indexer
22

33
import (
44
"context"
5+
"errors"
6+
"math/big"
57

68
"cosmossdk.io/collections"
79
"github.com/ethereum/go-ethereum/core/bloombits"
@@ -45,8 +47,15 @@ func (e *EVMIndexerImpl) bloomIndexing(ctx context.Context, height uint64) error
4547
}
4648

4749
for i := uint64(0); i < evmconfig.SectionSize; i++ {
48-
header, err := e.BlockHeaderByNumber(ctx, section*evmconfig.SectionSize+i)
49-
if err != nil {
50+
height := section*evmconfig.SectionSize + i
51+
header, err := e.BlockHeaderByNumber(ctx, height)
52+
if err != nil && errors.Is(err, collections.ErrNotFound) {
53+
// pruned block, create a dummy header
54+
header = &coretypes.Header{
55+
Number: new(big.Int).SetUint64(height),
56+
Bloom: coretypes.Bloom{},
57+
}
58+
} else if err != nil {
5059
return err
5160
}
5261

Diff for: indexer/bloom_test.go

+12
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,18 @@ func Test_BloomIndexing(t *testing.T) {
5151
}
5252
}
5353

54+
// create a new block to trigger bloom indexing
55+
tests.IncreaseBlockHeight(t, app)
56+
57+
// wait for bloom indexing
58+
for {
59+
if indexer.IsBloomIndexingRunning() {
60+
time.Sleep(100 * time.Millisecond)
61+
} else {
62+
break
63+
}
64+
}
65+
5466
ctx, err := app.CreateQueryContext(0, false)
5567
require.NoError(t, err)
5668

Diff for: indexer/prune_test.go

+12
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,18 @@ func Test_PruneIndexer_BloomBits(t *testing.T) {
130130
}
131131
}
132132

133+
// create a new block to trigger bloom indexing
134+
tests.IncreaseBlockHeight(t, app)
135+
136+
// wait for bloom indexing
137+
for {
138+
if indexer.IsBloomIndexingRunning() {
139+
time.Sleep(100 * time.Millisecond)
140+
} else {
141+
break
142+
}
143+
}
144+
133145
// wait for pruning
134146
for {
135147
if indexer.IsPruningRunning() {

Diff for: indexer/reader.go

-9
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package indexer
22

33
import (
44
"context"
5-
"math/big"
65

76
"cosmossdk.io/collections"
87
"github.com/ethereum/go-ethereum/common"
@@ -12,14 +11,6 @@ import (
1211

1312
// BlockHeaderByNumber implements EVMIndexer.
1413
func (e *EVMIndexerImpl) BlockHeaderByNumber(ctx context.Context, blockNumber uint64) (*coretypes.Header, error) {
15-
if blockNumber == 0 {
16-
// this is a special case for genesis block
17-
return &coretypes.Header{
18-
Number: big.NewInt(0),
19-
Bloom: coretypes.Bloom{},
20-
}, nil
21-
}
22-
2314
blockHeader, err := e.BlockHeaderMap.Get(ctx, blockNumber)
2415
if err != nil {
2516
return nil, err

Diff for: jsonrpc/backend/filters_test.go

+12
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,18 @@ func Test_BloomStatus(t *testing.T) {
7878
}
7979
}
8080

81+
// create a new block to trigger bloom indexing
82+
tests.IncreaseBlockHeight(t, app)
83+
84+
// wait for bloom indexing
85+
for {
86+
if indexer.IsBloomIndexingRunning() {
87+
time.Sleep(100 * time.Millisecond)
88+
} else {
89+
break
90+
}
91+
}
92+
8193
tx2, _ := tests.GenerateCreateERC20Tx(t, app, privKeys[1])
8294
_, finalizeRes2 := tests.ExecuteTxs(t, app, tx2)
8395
tests.CheckTxResult(t, finalizeRes2.TxResults[0], true)

Diff for: scripts/contractsgen.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ for CONTRACT_HOME in $CONTRACTS_DIR/*; do
1414
echo $CONTRACT_PATH
1515
CONTRACT_NAME=$(basename $CONTRACT_PATH .sol)
1616
echo $CONTRACT_HOME $PKG_NAME $CONTRACT_PATH $CONTRACT_NAME
17-
solc $CONTRACT_PATH --bin --abi -o $BUILD_DIR --overwrite
17+
solc $CONTRACT_PATH --metadata-hash none --bin --abi -o $BUILD_DIR --overwrite
1818
abigen --pkg $PKG_NAME \
1919
--bin=$BUILD_DIR/$CONTRACT_NAME.bin \
2020
--abi=$BUILD_DIR/$CONTRACT_NAME.abi \

Diff for: x/evm/contracts/counter/Counter.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/erc20/ERC20.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/erc20_acl/ERC20ACL.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/erc20_factory/ERC20Factory.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/erc20_registry/ERC20Registry.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/erc20_wrapper/ERC20Wrapper.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/ics721_erc721/ICS721ERC721.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/initia_erc20/InitiaERC20.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/ownable/Ownable.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/strings/Strings.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: x/evm/contracts/utils/ERC721Utils.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)