Skip to content

Commit a9a493b

Browse files
committed
Merge remote-tracking branch 'origin/main' into feat/unordered-ica
2 parents 9c66eb6 + 219be36 commit a9a493b

File tree

17 files changed

+350
-119
lines changed

17 files changed

+350
-119
lines changed

app/app.go

+7-1
Original file line numberDiff line numberDiff line change
@@ -900,7 +900,13 @@ func New(
900900

901901
icaHostIBCModule := icahost.NewIBCModule(app.ICAHostKeeper)
902902

903-
interchainQueriesModule := interchainqueries.NewAppModule(appCodec, app.InterchainQueriesKeeper, app.AccountKeeper, app.BankKeeper)
903+
interchainQueriesModule := interchainqueries.NewAppModule(
904+
appCodec,
905+
keys[interchainqueriesmoduletypes.StoreKey],
906+
app.InterchainQueriesKeeper,
907+
app.AccountKeeper,
908+
app.BankKeeper,
909+
)
904910
interchainTxsModule := interchaintxs.NewAppModule(appCodec, app.InterchainTxsKeeper, app.AccountKeeper, app.BankKeeper)
905911
contractManagerModule := contractmanager.NewAppModule(appCodec, app.ContractManagerKeeper)
906912
ibcHooksModule := ibchooks.NewAppModule(app.AccountKeeper)

go.mod

+10-10
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ require (
2020
github.com/cosmos/cosmos-db v1.0.2
2121
github.com/cosmos/cosmos-proto v1.0.0-beta.5
2222
github.com/cosmos/cosmos-sdk v0.50.9
23-
github.com/cosmos/gogoproto v1.6.0
23+
github.com/cosmos/gogoproto v1.7.0
2424
github.com/cosmos/ibc-apps/middleware/packet-forward-middleware/v8 v8.0.2
2525
github.com/cosmos/ibc-go/modules/capability v1.0.1
26-
github.com/cosmos/ibc-go/v8 v8.4.0
27-
github.com/cosmos/ics23/go v0.10.0
26+
github.com/cosmos/ibc-go/v8 v8.5.0
27+
github.com/cosmos/ics23/go v0.11.0
2828
github.com/cosmos/interchain-security/v5 v5.1.1
2929
github.com/gogo/protobuf v1.3.3
3030
github.com/golang/mock v1.6.0
@@ -53,11 +53,11 @@ require (
5353
)
5454

5555
require (
56-
cloud.google.com/go v0.114.0 // indirect
57-
cloud.google.com/go/auth v0.5.1 // indirect
56+
cloud.google.com/go v0.115.0 // indirect
57+
cloud.google.com/go/auth v0.6.0 // indirect
5858
cloud.google.com/go/auth/oauth2adapt v0.2.2 // indirect
5959
cloud.google.com/go/compute/metadata v0.3.0 // indirect
60-
cloud.google.com/go/iam v1.1.8 // indirect
60+
cloud.google.com/go/iam v1.1.9 // indirect
6161
cloud.google.com/go/storage v1.41.0 // indirect
6262
cosmossdk.io/api v0.7.5 // indirect
6363
cosmossdk.io/collections v0.4.0 // indirect
@@ -124,7 +124,7 @@ require (
124124
github.com/google/s2a-go v0.1.7 // indirect
125125
github.com/google/uuid v1.6.0 // indirect
126126
github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect
127-
github.com/googleapis/gax-go/v2 v2.12.4 // indirect
127+
github.com/googleapis/gax-go/v2 v2.12.5 // indirect
128128
github.com/gorilla/handlers v1.5.2 // indirect
129129
github.com/gorilla/websocket v1.5.3 // indirect
130130
github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 // indirect
@@ -201,12 +201,12 @@ require (
201201
golang.org/x/net v0.28.0 // indirect
202202
golang.org/x/oauth2 v0.22.0 // indirect
203203
golang.org/x/sync v0.8.0 // indirect
204-
golang.org/x/sys v0.23.0 // indirect
204+
golang.org/x/sys v0.24.0 // indirect
205205
golang.org/x/term v0.23.0 // indirect
206206
golang.org/x/text v0.17.0 // indirect
207207
golang.org/x/time v0.5.0 // indirect
208-
google.golang.org/api v0.180.0 // indirect
209-
google.golang.org/genproto v0.0.0-20240401170217-c3f982113cda // indirect
208+
google.golang.org/api v0.186.0 // indirect
209+
google.golang.org/genproto v0.0.0-20240701130421-f6361c86f094 // indirect
210210
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect
211211
gopkg.in/ini.v1 v1.67.0 // indirect
212212
gopkg.in/yaml.v3 v3.0.1 // indirect

go.sum

+20-20
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ cloud.google.com/go v0.100.2/go.mod h1:4Xra9TjzAeYHrl5+oeLlzbM2k3mjVhZh4UqTZ//w9
3030
cloud.google.com/go v0.102.0/go.mod h1:oWcCzKlqJ5zgHQt9YsaeTY9KzIvjyy0ArmiBUgpQ+nc=
3131
cloud.google.com/go v0.102.1/go.mod h1:XZ77E9qnTEnrgEOvr4xzfdX5TRo7fB4T2F4O6+34hIU=
3232
cloud.google.com/go v0.104.0/go.mod h1:OO6xxXdJyvuJPcEPBLN9BJPD+jep5G1+2U5B5gkRYtA=
33-
cloud.google.com/go v0.114.0 h1:OIPFAdfrFDFO2ve2U7r/H5SwSbBzEdrBdE7xkgwc+kY=
34-
cloud.google.com/go v0.114.0/go.mod h1:ZV9La5YYxctro1HTPug5lXH/GefROyW8PPD4T8n9J8E=
33+
cloud.google.com/go v0.115.0 h1:CnFSK6Xo3lDYRoBKEcAtia6VSC837/ZkJuRduSFnr14=
34+
cloud.google.com/go v0.115.0/go.mod h1:8jIM5vVgoAEoiVxQ/O4BFTfHqulPZgs/ufEzMcFMdWU=
3535
cloud.google.com/go/aiplatform v1.22.0/go.mod h1:ig5Nct50bZlzV6NvKaTwmplLLddFx0YReh9WfTO5jKw=
3636
cloud.google.com/go/aiplatform v1.24.0/go.mod h1:67UUvRBKG6GTayHKV8DBv2RtR1t93YRu5B1P3x99mYY=
3737
cloud.google.com/go/analytics v0.11.0/go.mod h1:DjEWCu41bVbYcKyvlws9Er60YE4a//bK6mnhWvQeFNI=
@@ -46,8 +46,8 @@ cloud.google.com/go/asset v1.8.0/go.mod h1:mUNGKhiqIdbr8X7KNayoYvyc4HbbFO9URsjby
4646
cloud.google.com/go/assuredworkloads v1.5.0/go.mod h1:n8HOZ6pff6re5KYfBXcFvSViQjDwxFkAkmUFffJRbbY=
4747
cloud.google.com/go/assuredworkloads v1.6.0/go.mod h1:yo2YOk37Yc89Rsd5QMVECvjaMKymF9OP+QXWlKXUkXw=
4848
cloud.google.com/go/assuredworkloads v1.7.0/go.mod h1:z/736/oNmtGAyU47reJgGN+KVoYoxeLBoj4XkKYscNI=
49-
cloud.google.com/go/auth v0.5.1 h1:0QNO7VThG54LUzKiQxv8C6x1YX7lUrzlAa1nVLF8CIw=
50-
cloud.google.com/go/auth v0.5.1/go.mod h1:vbZT8GjzDf3AVqCcQmqeeM32U9HBFc32vVVAbwDsa6s=
49+
cloud.google.com/go/auth v0.6.0 h1:5x+d6b5zdezZ7gmLWD1m/xNjnaQ2YDhmIz/HH3doy1g=
50+
cloud.google.com/go/auth v0.6.0/go.mod h1:b4acV+jLQDyjwm4OXHYjNvRi4jvGBzHWJRtJcy+2P4g=
5151
cloud.google.com/go/auth/oauth2adapt v0.2.2 h1:+TTV8aXpjeChS9M+aTtN/TjdQnzJvmzKFt//oWu7HX4=
5252
cloud.google.com/go/auth/oauth2adapt v0.2.2/go.mod h1:wcYjgpZI9+Yu7LyYBg4pqSiaRkfEK3GQcpb7C/uyF1Q=
5353
cloud.google.com/go/automl v1.5.0/go.mod h1:34EjfoFGMZ5sgJ9EoLsRtdPSNZLcfflJR39VbVNS2M0=
@@ -111,8 +111,8 @@ cloud.google.com/go/gkehub v0.10.0/go.mod h1:UIPwxI0DsrpsVoWpLB0stwKCP+WFVG9+y97
111111
cloud.google.com/go/grafeas v0.2.0/go.mod h1:KhxgtF2hb0P191HlY5besjYm6MqTSTj3LSI+M+ByZHc=
112112
cloud.google.com/go/iam v0.3.0/go.mod h1:XzJPvDayI+9zsASAFO68Hk07u3z+f+JrT2xXNdp4bnY=
113113
cloud.google.com/go/iam v0.5.0/go.mod h1:wPU9Vt0P4UmCux7mqtRu6jcpPAb74cP1fh50J3QpkUc=
114-
cloud.google.com/go/iam v1.1.8 h1:r7umDwhj+BQyz0ScZMp4QrGXjSTI3ZINnpgU2nlB/K0=
115-
cloud.google.com/go/iam v1.1.8/go.mod h1:GvE6lyMmfxXauzNq8NbgJbeVQNspG+tcdL/W8QO1+zE=
114+
cloud.google.com/go/iam v1.1.9 h1:oSkYLVtVme29uGYrOcKcvJRht7cHJpYD09GM9JaR0TE=
115+
cloud.google.com/go/iam v1.1.9/go.mod h1:Nt1eDWNYH9nGQg3d/mY7U1hvfGmsaG9o/kLGoLoLXjQ=
116116
cloud.google.com/go/language v1.4.0/go.mod h1:F9dRpNFQmJbkaop6g0JhSBXCNlO90e1KWx5iDdxbWic=
117117
cloud.google.com/go/language v1.6.0/go.mod h1:6dJ8t3B+lUYfStgls25GusK04NLh3eDLQnWM3mdEbhI=
118118
cloud.google.com/go/lifesciences v0.5.0/go.mod h1:3oIKy8ycWGPUyZDR/8RNnTOYevhaMLqh5vLUXs9zvT8=
@@ -367,18 +367,18 @@ github.com/cosmos/go-bip39 v1.0.0/go.mod h1:RNJv0H/pOIVgxw6KS7QeX2a0Uo0aKUlfhZ4x
367367
github.com/cosmos/gogogateway v1.2.0 h1:Ae/OivNhp8DqBi/sh2A8a1D0y638GpL3tkmLQAiKxTE=
368368
github.com/cosmos/gogogateway v1.2.0/go.mod h1:iQpLkGWxYcnCdz5iAdLcRBSw3h7NXeOkZ4GUkT+tbFI=
369369
github.com/cosmos/gogoproto v1.4.2/go.mod h1:cLxOsn1ljAHSV527CHOtaIP91kK6cCrZETRBrkzItWU=
370-
github.com/cosmos/gogoproto v1.6.0 h1:Xm0F/96O5Ox4g6xGgjA41rWaaPjYtOdTi59uBcV2qEE=
371-
github.com/cosmos/gogoproto v1.6.0/go.mod h1:Y+g956rcUf2vr4uwtCcK/1Xx9BWVluCtcI9vsh0GHmk=
370+
github.com/cosmos/gogoproto v1.7.0 h1:79USr0oyXAbxg3rspGh/m4SWNyoz/GLaAh0QlCe2fro=
371+
github.com/cosmos/gogoproto v1.7.0/go.mod h1:yWChEv5IUEYURQasfyBW5ffkMHR/90hiHgbNgrtp4j0=
372372
github.com/cosmos/iavl v1.2.0 h1:kVxTmjTh4k0Dh1VNL046v6BXqKziqMDzxo93oh3kOfM=
373373
github.com/cosmos/iavl v1.2.0/go.mod h1:HidWWLVAtODJqFD6Hbne2Y0q3SdxByJepHUOeoH4LiI=
374374
github.com/cosmos/ibc-apps/middleware/packet-forward-middleware/v8 v8.0.2 h1:dyLNlDElY6+5zW/BT/dO/3Ad9FpQblfh+9dQpYQodbA=
375375
github.com/cosmos/ibc-apps/middleware/packet-forward-middleware/v8 v8.0.2/go.mod h1:82hPO/tRawbuFad2gPwChvpZ0JEIoNi91LwVneAYCeM=
376376
github.com/cosmos/ibc-go/modules/capability v1.0.1 h1:ibwhrpJ3SftEEZRxCRkH0fQZ9svjthrX2+oXdZvzgGI=
377377
github.com/cosmos/ibc-go/modules/capability v1.0.1/go.mod h1:rquyOV262nGJplkumH+/LeYs04P3eV8oB7ZM4Ygqk4E=
378-
github.com/cosmos/ibc-go/v8 v8.4.0 h1:K2PfX0AZ+1XKZytHGEMuSjQXG/MZshPb83RSTQt2+cE=
379-
github.com/cosmos/ibc-go/v8 v8.4.0/go.mod h1:zh6x1osR0hNvEcFrC/lhGD08sMfQmr9wHVvZ/mRWMCs=
380-
github.com/cosmos/ics23/go v0.10.0 h1:iXqLLgp2Lp+EdpIuwXTYIQU+AiHj9mOC2X9ab++bZDM=
381-
github.com/cosmos/ics23/go v0.10.0/go.mod h1:ZfJSmng/TBNTBkFemHHHj5YY7VAU/MBU980F4VU1NG0=
378+
github.com/cosmos/ibc-go/v8 v8.5.0 h1:OjaSXz480JT8ZuMrASxGgS7XzloZ2NuuJPwZB/fKDgE=
379+
github.com/cosmos/ibc-go/v8 v8.5.0/go.mod h1:P5hkAvq0Qbg0h18uLxDVA9q1kOJ0l36htMsskiNwXbo=
380+
github.com/cosmos/ics23/go v0.11.0 h1:jk5skjT0TqX5e5QJbEnwXIS2yI2vnmLOgpQPeM5RtnU=
381+
github.com/cosmos/ics23/go v0.11.0/go.mod h1:A8OjxPE67hHST4Icw94hOxxFEJMBG031xIGF/JHNIY0=
382382
github.com/cosmos/interchain-security/v5 v5.0.0-20240802125602-fa1e09444aae h1:/EWV9qryltapge0v4ctvl2jV3Nne5nsbd+GYblj/jWA=
383383
github.com/cosmos/interchain-security/v5 v5.0.0-20240802125602-fa1e09444aae/go.mod h1:P3TM8JmE9Q20Jfch3jnFcQ4IXJp5twueRnUudi6XEGI=
384384
github.com/cosmos/keyring v1.2.0 h1:8C1lBP9xhImmIabyXW4c3vFjjLiBdGCmfLUfeZlV1Yo=
@@ -633,8 +633,8 @@ github.com/googleapis/gax-go/v2 v2.3.0/go.mod h1:b8LNqSzNabLiUpXKkY7HAR5jr6bIT99
633633
github.com/googleapis/gax-go/v2 v2.4.0/go.mod h1:XOTVJ59hdnfJLIP/dh8n5CGryZR2LxK9wbMD5+iXC6c=
634634
github.com/googleapis/gax-go/v2 v2.5.1/go.mod h1:h6B0KMMFNtI2ddbGJn3T3ZbwkeT6yqEF02fYlzkUCyo=
635635
github.com/googleapis/gax-go/v2 v2.6.0/go.mod h1:1mjbznJAPHFpesgE5ucqfYEscaz5kMdcIDwU/6+DDoY=
636-
github.com/googleapis/gax-go/v2 v2.12.4 h1:9gWcmF85Wvq4ryPFvGFaOgPIs1AQX0d0bcbGw4Z96qg=
637-
github.com/googleapis/gax-go/v2 v2.12.4/go.mod h1:KYEYLorsnIGDi/rPC8b5TdlB9kbKoFubselGIoBMCwI=
636+
github.com/googleapis/gax-go/v2 v2.12.5 h1:8gw9KZK8TiVKB6q3zHY3SBzLnrGp6HQjyfYBYGmXdxA=
637+
github.com/googleapis/gax-go/v2 v2.12.5/go.mod h1:BUDKcWo+RaKq5SC9vVYL0wLADa3VcfswbOMMRmB9H3E=
638638
github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4=
639639
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
640640
github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg=
@@ -1363,8 +1363,8 @@ golang.org/x/sys v0.0.0-20221010170243-090e33056c14/go.mod h1:oPkhp1MJrh7nUepCBc
13631363
golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
13641364
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
13651365
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
1366-
golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM=
1367-
golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
1366+
golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg=
1367+
golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
13681368
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
13691369
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
13701370
golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
@@ -1508,8 +1508,8 @@ google.golang.org/api v0.96.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ
15081508
google.golang.org/api v0.97.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s=
15091509
google.golang.org/api v0.98.0/go.mod h1:w7wJQLTM+wvQpNf5JyEcBoxK0RH7EDrh/L4qfsuJ13s=
15101510
google.golang.org/api v0.100.0/go.mod h1:ZE3Z2+ZOr87Rx7dqFsdRQkRBk36kDtp/h+QpHbB7a70=
1511-
google.golang.org/api v0.180.0 h1:M2D87Yo0rGBPWpo1orwfCLehUUL6E7/TYe5gvMQWDh4=
1512-
google.golang.org/api v0.180.0/go.mod h1:51AiyoEg1MJPSZ9zvklA8VnRILPXxn1iVen9v25XHAE=
1511+
google.golang.org/api v0.186.0 h1:n2OPp+PPXX0Axh4GuSsL5QL8xQCTb2oDwyzPnQvqUug=
1512+
google.golang.org/api v0.186.0/go.mod h1:hvRbBmgoje49RV3xqVXrmP6w93n6ehGgIVPYrGtBFFc=
15131513
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
15141514
google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
15151515
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
@@ -1625,8 +1625,8 @@ google.golang.org/genproto v0.0.0-20221010155953-15ba04fc1c0e/go.mod h1:3526vdqw
16251625
google.golang.org/genproto v0.0.0-20221014173430-6e2ab493f96b/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM=
16261626
google.golang.org/genproto v0.0.0-20221014213838-99cd37c6964a/go.mod h1:1vXfmgAz9N9Jx0QA82PqRVauvCz1SGSz739p0f183jM=
16271627
google.golang.org/genproto v0.0.0-20221025140454-527a21cfbd71/go.mod h1:9qHF0xnpdSfF6knlcsnpzUu5y+rpwgbvsyGAZPBMg4s=
1628-
google.golang.org/genproto v0.0.0-20240401170217-c3f982113cda h1:wu/KJm9KJwpfHWhkkZGohVC6KRrc1oJNr4jwtQMOQXw=
1629-
google.golang.org/genproto v0.0.0-20240401170217-c3f982113cda/go.mod h1:g2LLCvCeCSir/JJSWosk19BR4NVxGqHUC6rxIRsd7Aw=
1628+
google.golang.org/genproto v0.0.0-20240701130421-f6361c86f094 h1:6whtk83KtD3FkGrVb2hFXuQ+ZMbCNdakARIn/aHMmG8=
1629+
google.golang.org/genproto v0.0.0-20240701130421-f6361c86f094/go.mod h1:Zs4wYw8z1zr6RNF4cwYb31mvN/EGaKAdQjNCF3DW6K4=
16301630
google.golang.org/genproto/googleapis/api v0.0.0-20240814211410-ddb44dafa142 h1:wKguEg1hsxI2/L3hUYrpo1RVi48K+uTyzKqprwLXsb8=
16311631
google.golang.org/genproto/googleapis/api v0.0.0-20240814211410-ddb44dafa142/go.mod h1:d6be+8HhtEtucleCbxpPW9PA9XwISACu8nvpPqF0BVo=
16321632
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 h1:e7S5W7MGGLaSu8j3YjdezkZ+m1/Nm0uRVRMEMGk26Xs=

proto/neutron/interchainqueries/params.proto

+6
Original file line numberDiff line numberDiff line change
@@ -23,4 +23,10 @@ message Params {
2323
// balance between network cleaning speed and EndBlock duration. A zero value
2424
// means no limit.
2525
uint64 tx_query_removal_limit = 3;
26+
27+
// Maximum amount of keys in a registered key value query
28+
uint64 max_kv_query_keys_count = 4;
29+
30+
// max_transactions_filters defines maximum allowed amount of tx filters in msgRegisterInterchainQuery
31+
uint64 max_transactions_filters = 5;
2632
}
+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package keeper
2+
3+
import (
4+
storetypes "cosmossdk.io/store/types"
5+
"github.com/cosmos/cosmos-sdk/codec"
6+
sdk "github.com/cosmos/cosmos-sdk/types"
7+
8+
v3 "github.com/neutron-org/neutron/v4/x/interchainqueries/migrations/v3"
9+
)
10+
11+
// Migrator is a struct for handling in-place store migrations.
12+
type Migrator struct {
13+
cdc codec.BinaryCodec
14+
storeKey storetypes.StoreKey
15+
}
16+
17+
// NewMigrator returns a new Migrator.
18+
func NewMigrator(cdc codec.BinaryCodec, storeKey storetypes.StoreKey) Migrator {
19+
return Migrator{storeKey: storeKey, cdc: cdc}
20+
}
21+
22+
// Migrate2to3 migrates from version 2 to 3.
23+
func (m Migrator) Migrate2to3(ctx sdk.Context) error {
24+
return v3.MigrateParams(ctx, m.cdc, m.storeKey)
25+
}

x/interchainqueries/keeper/msg_server.go

+9-10
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,14 @@ func NewMsgServerImpl(keeper Keeper) types.MsgServer {
3535

3636
func (m msgServer) RegisterInterchainQuery(goCtx context.Context, msg *types.MsgRegisterInterchainQuery) (*types.MsgRegisterInterchainQueryResponse, error) {
3737
defer telemetry.ModuleMeasureSince(types.ModuleName, time.Now(), LabelRegisterInterchainQuery)
38+
ctx := sdk.UnwrapSDKContext(goCtx)
39+
ctx.Logger().Debug("RegisterInterchainQuery", "msg", msg)
40+
params := m.GetParams(ctx)
3841

39-
if err := msg.Validate(); err != nil {
42+
if err := msg.Validate(params); err != nil {
4043
return nil, errors.Wrap(err, "failed to validate MsgRegisterInterchainQuery")
4144
}
4245

43-
ctx := sdk.UnwrapSDKContext(goCtx)
44-
ctx.Logger().Debug("RegisterInterchainQuery", "msg", msg)
45-
4646
senderAddr, err := sdk.AccAddressFromBech32(msg.Sender)
4747
if err != nil {
4848
m.Logger(ctx).Debug("RegisterInterchainQuery: failed to parse sender address", "sender_address", msg.Sender)
@@ -62,8 +62,6 @@ func (m msgServer) RegisterInterchainQuery(goCtx context.Context, msg *types.Msg
6262
lastID := m.GetLastRegisteredQueryKey(ctx)
6363
lastID++
6464

65-
params := m.GetParams(ctx)
66-
6765
registeredQuery := &types.RegisteredQuery{
6866
Id: lastID,
6967
Owner: msg.Sender,
@@ -122,12 +120,13 @@ func (m msgServer) RemoveInterchainQuery(goCtx context.Context, msg *types.MsgRe
122120
}
123121

124122
func (m msgServer) UpdateInterchainQuery(goCtx context.Context, msg *types.MsgUpdateInterchainQueryRequest) (*types.MsgUpdateInterchainQueryResponse, error) {
125-
if err := msg.Validate(); err != nil {
126-
return nil, errors.Wrap(err, "failed to validate MsgUpdateInterchainQueryRequest")
127-
}
128-
129123
ctx := sdk.UnwrapSDKContext(goCtx)
130124
ctx.Logger().Debug("UpdateInterchainQuery", "msg", msg)
125+
params := m.GetParams(ctx)
126+
127+
if err := msg.Validate(params); err != nil {
128+
return nil, errors.Wrap(err, "failed to validate MsgUpdateInterchainQueryRequest")
129+
}
131130

132131
query, err := m.GetQueryByID(ctx, msg.GetQueryId())
133132
if err != nil {

x/interchainqueries/keeper/msg_server_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ func TestMsgRegisterInterchainQueryValidate(t *testing.T) {
9999
"too many keys",
100100
types.MsgRegisterInterchainQuery{
101101
QueryType: string(types.InterchainQueryTypeKV),
102-
Keys: make([]*types.KVKey, types.MaxKVQueryKeysCount+1),
102+
Keys: make([]*types.KVKey, types.DefaultMaxKvQueryKeysCount+1),
103103
TransactionsFilter: "[]",
104104
ConnectionId: "connection-0",
105105
UpdatePeriod: 1,
@@ -394,7 +394,7 @@ func TestMsgUpdateInterchainQueryRequestValidate(t *testing.T) {
394394
"too many keys",
395395
types.MsgUpdateInterchainQueryRequest{
396396
QueryId: 1,
397-
NewKeys: make([]*types.KVKey, types.MaxKVQueryKeysCount+1),
397+
NewKeys: make([]*types.KVKey, types.DefaultMaxKvQueryKeysCount+1),
398398
NewUpdatePeriod: 0,
399399
Sender: testutil.TestOwnerAddress,
400400
},
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package v3
2+
3+
import (
4+
"fmt"
5+
6+
store "cosmossdk.io/store/types"
7+
8+
"github.com/cosmos/cosmos-sdk/codec"
9+
sdk "github.com/cosmos/cosmos-sdk/types"
10+
11+
"github.com/neutron-org/neutron/v4/x/interchainqueries/types"
12+
)
13+
14+
func MigrateParams(ctx sdk.Context, cdc codec.BinaryCodec, storeKey store.StoreKey) error {
15+
var params types.Params
16+
st := ctx.KVStore(storeKey)
17+
bz := st.Get(types.ParamsKey)
18+
if bz == nil {
19+
return fmt.Errorf("no params stored in %s", types.ParamsKey)
20+
}
21+
22+
cdc.MustUnmarshal(bz, &params)
23+
params.MaxTransactionsFilters = types.DefaultMaxTransactionsFilters
24+
params.MaxKvQueryKeysCount = types.DefaultMaxKvQueryKeysCount
25+
bz = cdc.MustMarshal(&params)
26+
st.Set(types.ParamsKey, bz)
27+
return nil
28+
}

0 commit comments

Comments
 (0)