-
-
Notifications
You must be signed in to change notification settings - Fork 157
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
slow to load transactions/activity when there are many transactions and the date range filter is applied #1328
Comments
I see that lnrpc.ListPaymentsRequest (https://lightning.engineering/api-docs/api/lnd/lightning/list-payments#lnrpclistpaymentsrequest) and lnrpc.ListInvoiceRequest (https://lightning.engineering/api-docs/api/lnd/lightning/list-invoices) have creation_date_start and creation_date_end . Are these used by Zeus or is filtering done client side? Also, I added some more filter requests for LND: lightningnetwork/lnd#7626 . |
#1322 was added. However, I noticed that ListPayments (https://lightning.engineering/api-docs/api/lnd/lightning/list-payments) does not return memos in lnrpc.Payment (https://lightning.engineering/api-docs/api/lnd/lightning/list-payments#lnrpcpayment). Are you computing those by decoding every invoice and then showing the memo that way? Wondering if it would be better to request that memos be added to the output in the lnrpc.Payment response in LND? |
@AndySchroder do you use Tor to connect or clearnet? Have you tried doing any db compaction? |
I am using clearnet. The latency to the LND node is about 5ms. Just to clarify the number of transactions we are talking about here:
I'm not sure how to do database compacting, but I don't know that that is the problem. Take a look at how long it takes LND to generate the data.
Looks like it took 7 seconds for LND to fetch the data, but if I open up Activity on Zeus, it takes 30 seconds.
Looks like it is over 100 megabytes of data that Zues is processing! Note, I've tested and it takes about 3 seconds to transfer that data over my network connection. It seems like we have 7 seconds to generate the data and 3 seconds to transfer (assuming it doesn't begin transferring while it's still generating), so 20 more seconds for Zeus to read through the data. Note, I do try to use Lightning Terminal's account feature to create a smaller account list, but Lightning Terminal in general is fairly buggy, so I can't use that in production. |
This bothers me as well. Would it make sense to implement infinite scrolling or pagination? It doesn't seem necessary to fetch all (matching) invoices at once when only about 12 fit the screen. |
I think infinite scrolling sounds like a good idea! That makes more sense than setting date filters. Zeus could pre-load the next transactions, maybe 20 at a time so it is not too slow. Above I mentioned the use of
|
Actually, I probably should have tested with the
Offsetting doesn't seem to change the fetch time much.
|
Another thing if it is so fast fetching just a few transactions, Zeus should just show the most recent ones on the left screen (the one you press the Parthenon icon to get to) where you can see your balance. Then, just infinitely scroll down to see the rest of the transactions. Then there would be no need to have a dedicated Activity screen and it would help with the UX issues for in pending transactions in #1865 . I think that screen could be cleaned up a bit by compacting the lightning and on chain balances into one line. I think we could get at least 4 recent transactions on that screen before scrolling. |
Would like to add a bounty of 200,000 sat for fixing this issue. |
I too find the "activity" screen very slow when loading and believe it may need re-thinking on how it is loading, happy to add 50,000 sats to the bounty pot. |
Also, it would be good to know if there is some other place we will get better results proposing our bounties for Zeus? |
Also, lightningnetwork/lnd#8530 is slightly related to this issue. |
Is this related? #2465 |
While it is not the final fix for sure (we still need pagination and caching), this should improve performance significantly: |
I make a bajillion zaps per day and get another bajillion incoming. I can't load my activity at all. |
Can you try the new v0.9.5-beta? We made some improvements there. |
Confirmed working in |
What is the unit conversion factor from bajillion zaps to zaps? |
Describe the feature
I have thousands of transactions. Zeus is very slow to load the transaction history even when I use the date range filter to only show one particular day that only has a few transactions. In that case, I would expect an instant result when the filter is active.
I'm using LND/REST.
Not sure if this is a Zeus issue, or the inability for LND to only respond a specified date range and Zeus just has to ask for all transactions all the time and then locally filter it.
The text was updated successfully, but these errors were encountered: