-
Notifications
You must be signed in to change notification settings - Fork 112
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
Lazy load nested items during contract call #7953
Lazy load nested items during contract call #7953
Conversation
…e lazy loaded Signed-off-by: IvanKavaldzhiev <[email protected]>
Signed-off-by: IvanKavaldzhiev <[email protected]>
Signed-off-by: IvanKavaldzhiev <[email protected]>
Signed-off-by: IvanKavaldzhiev <[email protected]>
Signed-off-by: IvanKavaldzhiev <[email protected]>
…ing-for-db-accessors
…ons, improve equals and hashCode Signed-off-by: IvanKavaldzhiev <[email protected]>
…ing-for-db-accessors
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #7953 +/- ##
=============================================
+ Coverage 64.28% 92.21% +27.92%
- Complexity 219 7249 +7030
=============================================
Files 75 894 +819
Lines 2453 29225 +26772
Branches 48 3561 +3513
=============================================
+ Hits 1577 26949 +25372
- Misses 837 1455 +618
- Partials 39 821 +782 ☔ View full report in Codecov by Sentry. |
...c/main/java/com/hedera/mirror/web3/evm/store/contract/HederaEvmStackedWorldStateUpdater.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Account.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Account.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Account.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Account.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Token.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Token.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Token.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Token.java
Outdated
Show resolved
Hide resolved
...-web3/src/test/java/com/hedera/mirror/web3/evm/store/accessor/TokenDatabaseAccessorTest.java
Show resolved
Hide resolved
Signed-off-by: IvanKavaldzhiev <[email protected]>
… models Signed-off-by: IvanKavaldzhiev <[email protected]>
Signed-off-by: IvanKavaldzhiev <[email protected]>
Signed-off-by: IvanKavaldzhiev <[email protected]>
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Account.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/services/store/models/Token.java
Outdated
Show resolved
Hide resolved
...or-web3/src/test/java/com/hedera/mirror/web3/evm/store/contract/HederaEvmWorldStateTest.java
Outdated
Show resolved
Hide resolved
Signed-off-by: IvanKavaldzhiev <[email protected]>
Signed-off-by: IvanKavaldzhiev <[email protected]>
…ing-for-db-accessors
…ing-for-db-accessors
Signed-off-by: IvanKavaldzhiev <[email protected]>
…ing-for-db-accessors
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.
LGTM
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.
LGTM
…ing-for-db-accessors
…ing-for-db-accessors
…ead of synchronized block Signed-off-by: IvanKavaldzhiev <[email protected]>
9b16908
hedera-mirror-web3/src/main/java/com/google/common/base/Suppliers.java
Outdated
Show resolved
Hide resolved
Signed-off-by: IvanKavaldzhiev <[email protected]>
…ing-for-db-accessors
…ing-for-db-accessors
Signed-off-by: IvanKavaldzhiev <[email protected]>
Signed-off-by: IvanKavaldzhiev <[email protected]>
hedera-mirror-web3/src/main/java/com/hedera/mirror/web3/utils/Suppliers.java
Outdated
Show resolved
Hide resolved
hedera-mirror-web3/src/main/java/com/hedera/mirror/web3/utils/Suppliers.java
Outdated
Show resolved
Hide resolved
...or-web3/src/main/java/com/hedera/mirror/web3/evm/store/accessor/AccountDatabaseAccessor.java
Outdated
Show resolved
Hide resolved
Signed-off-by: IvanKavaldzhiev <[email protected]>
…ing-for-db-accessors
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.
LGTM 🥂
Signed-off-by: IvanKavaldzhiev <[email protected]>
Quality Gate passedIssues Measures |
Description:
This PR enhances db accessors' performance by lazy loading some of the nested fields, which are not always directly used when fetching the models.
Related issue(s):
Fixes #7903
Notes for reviewer:
To be tested with acceptance and K6 tests
Checklist