Fix non-determinism issues with deep-mind logger in tests #383
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Added an updatable configuration to
deep_mind_handler
to support special adjusted behavior for the deep mind logger to be used specifically in the context of tests.In particular a new config flag called
zero_elapsed
is added to this config which if set to true will first zero out theelapsed
fields within a copy of the transaction trace before writing it out to the logs.The
zero_elapsed
flag is set to true in the deep_mind_tests in order to guarantee a deterministically generated log to compare against the committed log. This appears to be a more reliable solution to avoiding non-determinism in the tests than relying on the auto-generated[[:xdigit:]]
masks in the committed logs. It may now be reasonable to greatly simply that log merge and comparison logic, but that is not addressed in this PR.