Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix failing compatibility tests #7864

Open
gjermundgaraba opened this issue Jan 21, 2025 · 2 comments
Open

Fix failing compatibility tests #7864

gjermundgaraba opened this issue Jan 21, 2025 · 2 comments
Labels
testing Testing package and unit/integration tests

Comments

@gjermundgaraba
Copy link
Contributor

I am not entirely sure if last remaining tests have anything to do with the SDK 0.52 upgrade, unless it's the relayer that is somehow bugging out over some message changing.

But it would be great to get these fixed before we merge in feat/ibc-eureka so that we can test compatibility properly with only the Eureka changes (and so that we can stay confident in any patches we may need to backport).

There are two main areas that are breaking:

Interchain Accounts Queries

The failing test is TestInterchainAccountsQuery and seems to only fail when Chain A is running main and Chain B is running older versions (v7, v8, etc).

  === NAME  TestTransferChannelUpgradesTestSuite/TestChannelUpgrade_WithFeeMiddleware_CrossingHello_Succeeds
    upgradesv2_test.go:343:
                Error Trace:    /Users/gg/code/ibc-go/e2e/tests/transfer/upgradesv2_test.go:343
                Error:          Received unexpected error:

                                github.com/cosmos/ibc-go/v9/modules/apps/29-fee/types.MetadataFromVersion
                                        /Users/gg/code/ibc-go/modules/apps/29-fee/types/metadata.go:11
                                github.com/cosmos/ibc-go/e2e/tests/transfer.(*TransferChannelUpgradesTestSuite).TestChannelUpgrade_WithFeeMiddleware_CrossingHello_Succeeds.func6
                                        /Users/gg/code/ibc-go/e2e/tests/transfer/upgradesv2_test.go:342
                                failed to unmarshal metadata from version: ics20-2: invalid ICS29 middleware version

Links to failing jobs:

Channel upgrades with fee middleware

The two failing tests are TestChannelUpgrade_WithFeeMiddleware_CrossingHello_Succeeds and TestChannelUpgrade_WithFeeMiddleware_Succeeds, but it is not entirely clear if this is version related, since most of them seem to run fine (see the jobs below).

  === NAME  TestInterchainAccountsQueryTestSuite/TestInterchainAccountsQuery
    query_test.go:147: 
        	Error Trace:	/home/runner/work/ibc-go/ibc-go/e2e/tests/interchain_accounts/query_test.go:147
        	Error:      	"[]" should have 1 item(s), but has 0
        	Test:       	TestInterchainAccountsQueryTestSuite/TestInterchainAccountsQuery

Links to failing jobs:

@srdtrk
Copy link
Member

srdtrk commented Jan 24, 2025

This feature was only introduces in v8.3. This means:

  1. Chains older than that version cannot receive MsgModuleSafeQuery
  2. Chains older than that version cannot encode the protobuf message.

Maybe it has to do with this?

@AdityaSripal
Copy link
Member

AdityaSripal commented Jan 28, 2025

Don't have more to contribute re: the cause, but it seems like we're failing at unmarshalling an empty ack so might be worth figuring out what failed upstream. Perhaps the receive failed (ie the tx succeeded but maybe the app callback failed) and if we see the error returned on OnRecvPacket (which if it exists seems to pass through these tests) then we can narrow down the cause easier compared to what is getting returned right now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
testing Testing package and unit/integration tests
Projects
Status: Backlog
Development

No branches or pull requests

3 participants