Skip to content
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

[4.0 -> main] Merge time summary fix to main #954

Merged
merged 6 commits into from
Apr 3, 2023

Conversation

linh2931
Copy link
Member

@linh2931 linh2931 commented Apr 3, 2023

Merge #947.

#776 assumed read-only transactions to only run on read-only threads. #901 changed that and read-only transactions can run on main thread too.

  • Existing calculation of transient trxs time was done on the main thread. This is not correct any more as read-only trxs on the main thread in the read window will be double counted. The solution is to count transient time only in the write window (dry-run trxs only run in write window). This change makes the intention more clearer and safer, as in write window all processing is single threaded and no read-only threads are running.
  • Refactored push_read_only_transaction for read-only tasks missed idle time accounting. Add it now.

A sample report looks like
debug 2023-04-02T20:36:41.903 nodeos producer_plugin.cpp:284 report ] Block #259 trx idle: 555758us out of 565688us, success: 0, 0us, fail: 0, 0us, transient: 14, 2281us, other: 7649us

@linh2931 linh2931 requested review from greg7mdp and heifner April 3, 2023 17:36
@linh2931 linh2931 merged commit d382d71 into main Apr 3, 2023
@linh2931 linh2931 deleted the merge_time_summary_fix_to_main branch April 3, 2023 18:23
@arhag arhag linked an issue Apr 3, 2023 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

Transaction timing track problems when read-only trxs are involved
3 participants