Skip to content

Commit 6231b80

Browse files
committed
fix: inconsistent accounts list
1 parent 98a989f commit 6231b80

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

internal/storage/ledger/accounts_test.go

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,12 @@ func TestAccountsList(t *testing.T) {
5353
},
5454
}))
5555

56+
err = store.CommitTransaction(ctx, pointer.For(ledger.NewTransaction().
57+
WithPostings(ledger.NewPosting("world", "account:1", "USD", big.NewInt(100))).
58+
WithTimestamp(now).
59+
WithInsertedAt(now)), nil)
60+
require.NoError(t, err)
61+
5662
err = store.CommitTransaction(ctx, pointer.For(ledger.NewTransaction().
5763
WithPostings(ledger.NewPosting("world", "account:1", "USD", big.NewInt(100))).
5864
WithTimestamp(now.Add(4*time.Minute)).
@@ -112,7 +118,7 @@ func TestAccountsList(t *testing.T) {
112118
require.NoError(t, err)
113119
require.Len(t, accounts.Data, 1)
114120
require.Equal(t, ledger.VolumesByAssets{
115-
"USD": ledger.NewVolumesInt64(200, 50),
121+
"USD": ledger.NewVolumesInt64(300, 50),
116122
}, accounts.Data[0].Volumes)
117123
})
118124

@@ -129,7 +135,7 @@ func TestAccountsList(t *testing.T) {
129135
require.NoError(t, err)
130136
require.Len(t, accounts.Data, 1)
131137
require.Equal(t, ledger.VolumesByAssets{
132-
"USD": ledger.NewVolumesInt64(100, 0),
138+
"USD": ledger.NewVolumesInt64(200, 0),
133139
}, accounts.Data[0].Volumes)
134140
})
135141

@@ -145,7 +151,7 @@ func TestAccountsList(t *testing.T) {
145151
require.NoError(t, err)
146152
require.Len(t, accounts.Data, 1)
147153
require.Equal(t, ledger.VolumesByAssets{
148-
"USD": ledger.NewVolumesInt64(200, 50),
154+
"USD": ledger.NewVolumesInt64(300, 50),
149155
}, accounts.Data[0].EffectiveVolumes)
150156
})
151157

@@ -161,7 +167,7 @@ func TestAccountsList(t *testing.T) {
161167
require.NoError(t, err)
162168
require.Len(t, accounts.Data, 1)
163169
require.Equal(t, ledger.VolumesByAssets{
164-
"USD": ledger.NewVolumesInt64(100, 0),
170+
"USD": ledger.NewVolumesInt64(200, 0),
165171
}, accounts.Data[0].EffectiveVolumes)
166172
})
167173

internal/storage/ledger/resource_accounts.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ func (h accountsResourceHandler) expand(store *Store, opts ledgercontroller.Reso
162162
Where("insertion_date <= ?", opts.PIT)
163163
} else {
164164
selectRowsQuery = selectRowsQuery.
165-
ColumnExpr("first_value(post_commit_volumes) over (partition by (accounts_address, asset) order by effective_date desc) as volumes").
165+
ColumnExpr("first_value(post_commit_volumes) over (partition by (accounts_address, asset) order by effective_date desc, seq desc) as volumes").
166166
Where("effective_date <= ?", opts.PIT)
167167
}
168168
} else {

0 commit comments

Comments
 (0)