Skip to content

fix: wal disabled#5121

Open
gfanton wants to merge 3 commits intognolang:masterfrom
gfanton:fix/wal-disabled
Open

fix: wal disabled#5121
gfanton wants to merge 3 commits intognolang:masterfrom
gfanton:fix/wal-disabled

Conversation

@gfanton
Copy link
Member

@gfanton gfanton commented Feb 4, 2026

fix #5109

This PR include 2 fixes:


Issue 1

When integration tests spawn subprocess nodes, the configuration is serialized to JSON and passed via stdin. The WALDisabled field in the consensus configuration has a json:"-" tag, which means it is excluded from JSON serialization. This exclusion causes WALDisabled to default to false, resulting in WAL files being created even though the parent process intended to disable them. This issue arose when running a test multiple times (-count=X) and when restarting the node, as the genesis was changing but not the WAL file.
-> I now force-set WALDisabled to false, as it is unnecessary for integration tests. I also prevent WAL catch-up when WAL is disabled.


issue 2

When restarting the node during testing, it will not produce blocks (CreateEmptyBlocks = false - the test default for determinism) until it receives transactions. However, the tests wait for Ready() (which is waiting for a block to appear) before sending transactions, resulting in a deadlock.
-> Simply mark the node as ready when if any block is present when starting the node

@Gno2D2
Copy link
Collaborator

Gno2D2 commented Feb 4, 2026

🛠 PR Checks Summary

All Automated Checks passed. ✅

Manual Checks (for Reviewers):
  • IGNORE the bot requirements for this PR (force green CI check)
Read More

🤖 This bot helps streamline PR reviews by verifying automated checks and providing guidance for contributors and reviewers.

✅ Automated Checks (for Contributors):

🟢 Maintainers must be able to edit this pull request (more info)

☑️ Contributor Actions:
  1. Fix any issues flagged by automated checks.
  2. Follow the Contributor Checklist to ensure your PR is ready for review.
    • Add new tests, or document why they are unnecessary.
    • Provide clear examples/screenshots, if necessary.
    • Update documentation, if required.
    • Ensure no breaking changes, or include BREAKING CHANGE notes.
    • Link related issues/PRs, where applicable.
☑️ Reviewer Actions:
  1. Complete manual checks for the PR, including the guidelines and additional checks if applicable.
📚 Resources:
Debug
Automated Checks
Maintainers must be able to edit this pull request (more info)

If

🟢 Condition met
└── 🟢 And
    ├── 🟢 The base branch matches this pattern: ^master$
    └── 🟢 The pull request was created from a fork (head branch repo: gfanton/gno)

Then

🟢 Requirement satisfied
└── 🟢 Maintainer can modify this pull request

Manual Checks
**IGNORE** the bot requirements for this PR (force green CI check)

If

🟢 Condition met
└── 🟢 On every pull request

Can be checked by

  • Any user with comment edit permission

@codecov
Copy link

codecov bot commented Feb 4, 2026

Codecov Report

❌ Patch coverage is 75.00000% with 3 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
tm2/pkg/bft/node/node.go 70.00% 1 Missing and 2 partials ⚠️

📢 Thoughts on this report? Let us know!

@gfanton gfanton marked this pull request as ready for review February 5, 2026 09:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📦 🌐 tendermint v2 Issues or PRs tm2 related 📦 ⛰️ gno.land Issues or PRs gno.land package related

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

txtar integration tests failing locally on master (TestTestdata / TestNodeProcess)

2 participants