View Issue Details

IDProjectCategoryView StatusLast Update
0006588Talerwallet-corepublic2023-12-22 14:04
ReporterFlorian Dold Assigned Tosebasjm  
PrioritynormalSeverityfeatureReproducibilityhave not tried
Status assignedResolutionopen 
Product Versiongit (master) 
Target Versionpost-1.0 
Summary0006588: wallet-core should support range queries for the transactions list
DescriptionThis might require some additional indices to be faster!
TagsNo tags attached.

Activities

Florian Dold

2023-05-07 16:43

manager   ~0020188

Main thing to discuss here: How do we actually do the pagination? What do we use as the "cursor"?

A transaction ID is not sufficient, as it doesn't efficiently allow querying transactions before or after it. So maybe a timestamp? But what if timestamps are not unique?

Probably the cursor should be a (timestamp, txid) tuple.

sebasjm

2023-06-06 19:53

developer   ~0020271

Is even possible to have the same timestamp for two tx since there is no multithread in the wallet?

Florian Dold

2023-06-21 18:26

manager   ~0020299

We've decided on an API:

getTransactions({ filterStates, limit}) -> { results, cursor }
=> Start a new paginated query
getTransactions({ cursor, limit}) -> { results, cursor }
=> Get more results (cursor encodes filter as well)

(where limit can be negative/positive to go back/forwards in history)

MarcS

2023-09-04 19:42

developer   ~0020490

IMHO we need three groups:
• "done", which might be thousands of transactions over the years if the user doesn’t delete them.
• "waiting" == dialog (the user needs to confirm) plus pending (the other party needs to confirm)
• all others (expired, failed, aborted, aborting, suspended, suspended-aborting). Could be named "uncompleted" or "unsuccessful".

The result (list of transactions) should be sorted chronologically (newest first).

Issue History

Date Modified Username Field Change
2020-09-08 16:48 Florian Dold New Issue
2020-09-08 16:48 Florian Dold Status new => assigned
2020-09-08 16:48 Florian Dold Assigned To => Florian Dold
2020-09-10 18:45 Florian Dold Target Version 0.8.1 => 0.8
2020-09-10 18:48 Christian Grothoff Target Version 0.8 => 0.8.1
2020-09-11 22:57 Christian Grothoff Severity minor => tweak
2021-08-24 20:39 Christian Grothoff Target Version => 0.8.5
2022-10-20 10:45 Christian Grothoff Target Version 0.8.5 => 0.9
2022-10-20 11:21 Christian Grothoff Target Version 0.9 => 0.9.1
2023-01-10 18:36 Christian Grothoff Target Version 0.9.1 => 0.9.2
2023-01-31 22:06 sebasjm Assigned To Florian Dold => sebasjm
2023-02-17 17:51 Florian Dold Target Version 0.9.2 => 0.9.3
2023-04-13 20:36 Florian Dold Category wallet (TS core) => wallet-core
2023-05-07 16:43 Florian Dold Note Added: 0020188
2023-06-06 19:53 sebasjm Note Added: 0020271
2023-06-21 18:23 Florian Dold Target Version 0.9.3 => 0.9.4
2023-06-21 18:26 Florian Dold Note Added: 0020299
2023-09-04 19:42 MarcS Note Added: 0020490
2023-09-23 15:52 Christian Grothoff Target Version 0.9.4 => 0.9.5
2023-12-22 14:04 Christian Grothoff Severity tweak => feature
2023-12-22 14:04 Christian Grothoff Target Version 0.9.5 => post-1.0