[Enhancement] CLNRest convert /v1/listpays to /v1/sql #2298
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Like in PR #2290 and #2295, both
bkpr-listaccountevents
andlistinvoices
was converted tosql
to improve performance. This PR is similar in purpose but forlistpays
. Thelistpays
endpoint returns every lightning payment made by the node. In larger or older nodes this can be problematic. This PR limits payments returned to the last 150 payments made (completed, pending or failed).This PR updates the
listpays
endpoint tosql
to query thesendpays
table. Thelistpays
endpoint is a CLN plugin written in C; which I believe is defined here. The is nopays
table available in thesql
endpoint. Thesendpays
table is a list of payments attempts and payment parts. The query I include in this PR provides identical data point output (to the best of my knowledge) as thelistpays
but allows the limit to the last 150 payments bycreated_at
timestamp.Here is the query included in the PR:
This pull request is categorized as a:
Checklist
yarn run tsc
and made sure my code compiles correctlyyarn run lint
and made sure my code didn’t contain any problematic patternsyarn run prettier
and made sure my code is formatted correctlyyarn run test
and made sure all of the tests passTesting
If you modified or added a utility file, did you add new unit tests?
I have tested this PR on the following platforms (please specify OS version and phone model/VM):
I have tested this PR with the following types of nodes (please specify node version and API version where appropriate):
Locales
Third Party Dependencies and Packages
yarn
after this PR is merged inpackage.json
andyarn.lock
have been properly updatedOther: