Skip to content

Commit 0f7ce46

Browse files
committed
Use global wasm VM instead of keeping an additional reference in keeper.
1 parent cab3fcd commit 0f7ce46

File tree

5 files changed

+11
-11
lines changed

5 files changed

+11
-11
lines changed

modules/light-clients/08-wasm/keeper/genesis.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package keeper
33
import (
44
sdk "github.com/cosmos/cosmos-sdk/types"
55

6+
"github.com/cosmos/ibc-go/modules/light-clients/08-wasm/internal/ibcwasm"
67
"github.com/cosmos/ibc-go/modules/light-clients/08-wasm/types"
78
)
89

@@ -29,7 +30,7 @@ func (k Keeper) ExportGenesis(ctx sdk.Context) types.GenesisState {
2930
// Grab code from wasmVM and add to genesis state.
3031
var genesisState types.GenesisState
3132
for _, checksum := range checksums {
32-
code, err := k.wasmVM.GetCode(checksum)
33+
code, err := ibcwasm.GetVM().GetCode(checksum)
3334
if err != nil {
3435
panic(err)
3536
}

modules/light-clients/08-wasm/keeper/grpc_query.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ func (k Keeper) Code(goCtx context.Context, req *types.QueryCodeRequest) (*types
3535
return nil, status.Error(codes.NotFound, errorsmod.Wrap(types.ErrWasmChecksumNotFound, req.Checksum).Error())
3636
}
3737

38-
code, err := k.wasmVM.GetCode(checksum)
38+
code, err := ibcwasm.GetVM().GetCode(checksum)
3939
if err != nil {
4040
return nil, status.Error(codes.NotFound, errorsmod.Wrap(types.ErrWasmChecksumNotFound, req.Checksum).Error())
4141
}

modules/light-clients/08-wasm/keeper/keeper.go

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,7 @@ type Keeper struct {
2525
// implements gRPC QueryServer interface
2626
types.QueryServer
2727

28-
cdc codec.BinaryCodec
29-
wasmVM ibcwasm.WasmEngine
28+
cdc codec.BinaryCodec
3029

3130
clientKeeper types.ClientKeeper
3231

@@ -64,7 +63,6 @@ func NewKeeperWithVM(
6463

6564
return Keeper{
6665
cdc: cdc,
67-
wasmVM: vm,
6866
clientKeeper: clientKeeper,
6967
authority: authority,
7068
}
@@ -120,7 +118,7 @@ func (k Keeper) storeWasmCode(ctx sdk.Context, code []byte) ([]byte, error) {
120118

121119
// create the code in the vm
122120
ctx.GasMeter().ConsumeGas(types.VMGasRegister.CompileCosts(len(code)), "Compiling wasm bytecode")
123-
vmChecksum, err := k.wasmVM.StoreCode(code)
121+
vmChecksum, err := ibcwasm.GetVM().StoreCode(code)
124122
if err != nil {
125123
return nil, errorsmod.Wrap(err, "failed to store contract")
126124
}
@@ -131,7 +129,7 @@ func (k Keeper) storeWasmCode(ctx sdk.Context, code []byte) ([]byte, error) {
131129
}
132130

133131
// pin the code to the vm in-memory cache
134-
if err := k.wasmVM.Pin(vmChecksum); err != nil {
132+
if err := ibcwasm.GetVM().Pin(vmChecksum); err != nil {
135133
return nil, errorsmod.Wrapf(err, "failed to pin contract with checksum (%s) to vm cache", hex.EncodeToString(vmChecksum))
136134
}
137135

modules/light-clients/08-wasm/keeper/msg_server.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ func (k Keeper) RemoveChecksum(goCtx context.Context, msg *types.MsgRemoveChecks
5050
}
5151

5252
// unpin the code from the vm in-memory cache
53-
if err := k.wasmVM.Unpin(msg.Checksum); err != nil {
53+
if err := ibcwasm.GetVM().Unpin(msg.Checksum); err != nil {
5454
return nil, errorsmod.Wrapf(err, "failed to unpin contract with checksum (%s) from vm cache", hex.EncodeToString(msg.Checksum))
5555
}
5656

modules/light-clients/08-wasm/keeper/snapshotter.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212

1313
tmproto "github.com/cometbft/cometbft/proto/tendermint/types"
1414

15+
"github.com/cosmos/ibc-go/modules/light-clients/08-wasm/internal/ibcwasm"
1516
"github.com/cosmos/ibc-go/modules/light-clients/08-wasm/types"
1617
)
1718

@@ -72,7 +73,7 @@ func (ws *WasmSnapshotter) SnapshotExtension(height uint64, payloadWriter snapsh
7273
}
7374

7475
for _, checksum := range checksums {
75-
wasmCode, err := ws.keeper.wasmVM.GetCode(checksum)
76+
wasmCode, err := ibcwasm.GetVM().GetCode(checksum)
7677
if err != nil {
7778
return err
7879
}
@@ -111,12 +112,12 @@ func restoreV1(ctx sdk.Context, k *Keeper, compressedCode []byte) error {
111112
return errorsmod.Wrap(err, "failed to uncompress wasm code")
112113
}
113114

114-
checksum, err := k.wasmVM.StoreCode(wasmCode)
115+
checksum, err := ibcwasm.GetVM().StoreCode(wasmCode)
115116
if err != nil {
116117
return errorsmod.Wrap(err, "failed to store wasm code")
117118
}
118119

119-
if err := k.wasmVM.Pin(checksum); err != nil {
120+
if err := ibcwasm.GetVM().Pin(checksum); err != nil {
120121
return errorsmod.Wrapf(err, "failed to pin checksum: %s to in-memory cache", hex.EncodeToString(checksum))
121122
}
122123

0 commit comments

Comments
 (0)