diff --git a/CHANGELOG.md b/CHANGELOG.md index d6e650ae9..3057f84c9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -46,4 +46,5 @@ Ref: https://keepachangelog.com/en/1.0.0/ ### Bug Fixes +* (audit) [akash-network/support#619](https://github.com/akash-network/support/issues/619) Scope provider attribute queries to audit provider keys * Fix bug in ditribution and querying rewards diff --git a/x/audit/keeper/grpc_query.go b/x/audit/keeper/grpc_query.go index d51dce358..567fb20fc 100644 --- a/x/audit/keeper/grpc_query.go +++ b/x/audit/keeper/grpc_query.go @@ -6,6 +6,7 @@ import ( "google.golang.org/grpc/codes" "google.golang.org/grpc/status" + "cosmossdk.io/store/prefix" sdk "github.com/cosmos/cosmos-sdk/types" sdkquery "github.com/cosmos/cosmos-sdk/types/query" @@ -30,10 +31,10 @@ func (q Querier) AllProvidersAttributes( var providers types.AuditedProviders ctx := sdk.UnwrapSDKContext(c) - store := ctx.KVStore(q.skey) + store := prefix.NewStore(ctx.KVStore(q.skey), types.PrefixProviderID()) pageRes, err := sdkquery.Paginate(store, req.Pagination, func(key []byte, value []byte) error { - id := ParseIDFromKey(key) + id := ParseIDFromKey(append(append([]byte(nil), types.PrefixProviderID()...), key...)) var sVal types.AuditedAttributesStore if err := q.cdc.Unmarshal(value, &sVal); err != nil { @@ -132,10 +133,10 @@ func (q Querier) AuditorAttributes( var providers types.AuditedProviders ctx := sdk.UnwrapSDKContext(c) - store := ctx.KVStore(q.skey) + store := prefix.NewStore(ctx.KVStore(q.skey), types.PrefixProviderID()) pageRes, err := sdkquery.FilteredPaginate(store, req.Pagination, func(key []byte, value []byte, accumulate bool) (bool, error) { - id := ParseIDFromKey(key) + id := ParseIDFromKey(append(append([]byte(nil), types.PrefixProviderID()...), key...)) if !id.Auditor.Equals(auditor) { return false, nil } diff --git a/x/audit/keeper/grpc_query_test.go b/x/audit/keeper/grpc_query_test.go index 0d9db6cdc..485596f6c 100644 --- a/x/audit/keeper/grpc_query_test.go +++ b/x/audit/keeper/grpc_query_test.go @@ -112,6 +112,8 @@ func TestGRPCQueryProvider(t *testing.T) { func TestGRPCQueryProviders(t *testing.T) { suite := setupTest(t) + suite.ctx.KVStore(suite.keeper.StoreKey()).Set([]byte{0xff}, []byte{0x01}) + // creating providers id1, provider := testutil.AuditedProvider(t) err := suite.keeper.CreateOrUpdateProviderAttributes(suite.ctx, id1, provider.Attributes) @@ -183,6 +185,8 @@ func TestGRPCQueryProviders(t *testing.T) { func TestGRPCQueryAuditorAttributes(t *testing.T) { suite := setupTest(t) + suite.ctx.KVStore(suite.keeper.StoreKey()).Set([]byte{0xff}, []byte{0x01}) + // Two providers under the same auditor. auditor := testutil.AccAddress(t)

AltStyle によって変換されたページ (->オリジナル) /