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

Prevent (optionally) block processor batched writes from being logged by the lmdb tracker #1978

Conversation

wezrule
Copy link
Contributor

@wezrule wezrule commented May 11, 2019

Most write log entries from the lmdb tracker are for the Blck processing thread. This is expected when bootstrapping as we process writes in batches according to the block_processor_batch_max_time. This can become quite noisy (~80000 lines are safe to ignore in a full bootstrap on my Windows/debug test). This is added to the diagnostics -> txn_tracker config so that it can be toggled (default is to ignore them).

I get a lot of writes held longer than the "max", for instance using the default 5000ms block_processor_batch_max_time there are a few like so:

[2019-05-11 16:33:54.757606]: 7547ms write lock held on thread Blck processing

So I have added a few seconds buffer onto it when checking whether it should be output to trim these away as well.

@wezrule wezrule added this to the V19.0 milestone May 11, 2019
@wezrule wezrule requested a review from SergiySW May 11, 2019 16:23
@wezrule wezrule self-assigned this May 11, 2019
@zhyatt zhyatt requested a review from cryptocode May 14, 2019 00:07
@wezrule wezrule merged commit 3a0173f into nanocurrency:master May 14, 2019
@wezrule wezrule deleted the ignore_blk_processor_batched_writes_lmdb_tracker branch May 14, 2019 07:54
@zhyatt zhyatt added the documentation This item indicates the need for or supplies updated or expanded documentation label May 14, 2019
@zhyatt
Copy link
Collaborator

zhyatt commented Jul 11, 2019

@wezrule Does ignore_writes_below_block_processor_max_time need to be added as an option on the database_txn_tracker RPC call? It is unclear to me whether documentation changes are needed. https://docs.nano.org/commands/rpc-protocol/#database_txn_tracker

@zhyatt
Copy link
Collaborator

zhyatt commented Jul 11, 2019

Looks like I got this mixed up with that database_txn_tracker RPC call. I just saw the config entry for ignore_writes_below_block_processor_max_time on diagnostics https://docs.nano.org/running-a-node/configuration/#configjson. Let me know if any updates should be done, but we may be fine.

@wezrule
Copy link
Contributor Author

wezrule commented Jul 11, 2019

@zhyatt it's only applicable in the config, so I think we are good 👍

@zhyatt zhyatt removed the documentation This item indicates the need for or supplies updated or expanded documentation label Jul 11, 2019
@zhyatt zhyatt added rpc Changes related to Remote Procedure Calls and removed rpc nonbreaking change labels Mar 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rpc Changes related to Remote Procedure Calls
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants