-
Notifications
You must be signed in to change notification settings - Fork 180
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
[Access] Cache Transaction Result error messages #5066
[Access] Cache Transaction Result error messages #5066
Conversation
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #5066 +/- ##
==========================================
+ Coverage 56.25% 56.28% +0.03%
==========================================
Files 977 977
Lines 91472 91684 +212
==========================================
+ Hits 51456 51603 +147
- Misses 36202 36258 +56
- Partials 3814 3823 +9
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks @Guitarheroua! added a few comments.
} | ||
|
||
// nothing to do tx has not failed | ||
if !txResult.Failed { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in practice, lookupTransactionErrorMessage
will only be called after looking up the result and checking that it failed. You can remove that part from these methods
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Alright, that sounds good. I've removed it from lookupTransactionErrorMessage
but maintained similar calls to storage.LightTransactionResults
in *byIndex
and *byBlockID
calls. The reason for this is that the cache stores data using txid
, and I require a means to look it up. I don't anticipate it causing significant overhead since the storage layer has its own cache, and it's still more cost-effective than initiating a GRPC call.
For the next iteration, we could even consider passing lightTransactionResult
as an argument if we're going to query it anyway. Therefore, my suggestion is to leave it in this manner for the time being.
Co-authored-by: Yurii Oleksyshyn <yuraolex@gmail.com>
Co-authored-by: Peter Argue <89119817+peterargue@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for adding this! added a few small comments, but otherwise looks good
Co-authored-by: Peter Argue <89119817+peterargue@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good
…-result-err-msg [Access] Cache Transaction Result error messages
…-result-err-msg [Access] Cache Transaction Result error messages
…-result-err-msg [Access] Cache Transaction Result error messages
#4850
This PR introduces a straightforward pipeline designed to retrieve error messages from ENs (Execution Nodes). The pipeline is constructed using higher-level methods, initially checking the cache for relevant information. If the required value is absent in the cache, the pipeline employs specific methods to perform robust RPC requests to ENs for fetching missing values.
As this feature is intended to integrate with other functionalities related to indexing execution data, there haven't been modifications made to the external API, as it is expected to be paired with
storage.LightTransactionResults
to facilitate the implementation of theGetTransactionResult
method.All newly added methods have been covered by unit testing, even though they are not part of the public API interface.