Skip to content

test(bug): txtar to reproduce node crash on inserting many posts #4418

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

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

jefft0
Copy link
Contributor

@jefft0 jefft0 commented Jun 25, 2025

This txtar uses r/demo/boards to create a new board and post. Then it runs a script to add 800 replies (inserting into the avl.Tree). To run the test:

go test -v -count=1 ./gno.land/pkg/integration --run TestTestdata/many_inserts_stack_overflow

This should succeed. (There is enough gas.) But the node becomes unresponsive. (In some tests, when I run the script in a terminal with gnokey and a gnoland node, it crashes with "fatal error: stack overflow".) See the gist with the stack dump.

As the txtar says, if it only adds 600 replies then it succeeds.

NOTE: This PR also has a commit with the fix in #4435 to allow maketx run to call a crossing function. When that PR is merged, this commit will be removed from this PR.

@github-actions github-actions bot added 📦 🤖 gnovm Issues or PRs gnovm related 📦 ⛰️ gno.land Issues or PRs gno.land package related labels Jun 25, 2025
@Gno2D2 Gno2D2 added the review/triage-pending PRs opened by external contributors that are waiting for the 1st review label Jun 25, 2025
@Gno2D2
Copy link
Collaborator

Gno2D2 commented Jun 25, 2025

🛠 PR Checks Summary

🔴 Pending initial approval by a review team member, or review from tech-staff

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)
🔴 Pending initial approval by a review team member, or review from tech-staff

☑️ 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: jefft0/gno)

Then

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

Pending initial approval by a review team member, or review from tech-staff

If

🟢 Condition met
└── 🟢 And
    ├── 🟢 The base branch matches this pattern: ^master$
    └── 🟢 Not (🔴 Pull request author is a member of the team: tech-staff)

Then

🔴 Requirement not satisfied
└── 🔴 If
    ├── 🔴 Condition
    │   └── 🔴 Or
    │       ├── 🔴 At least 1 user(s) of the organization reviewed the pull request (with state "APPROVED")
    │       ├── 🔴 At least 1 user(s) of the team tech-staff reviewed pull request
    │       └── 🔴 This pull request is a draft
    └── 🔴 Else
        └── 🔴 And
            ├── 🟢 This label is applied to pull request: review/triage-pending
            ├── 🔴 At least 1 user(s) of the team tech-staff reviewed pull request
            └── 🔴 On no 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

@Kouteki Kouteki moved this from Triage to In Review in 🧙‍♂️gno.land core team Jun 30, 2025
@moul
Copy link
Member

moul commented Jul 1, 2025

This other PR could also address your issue more effectively: #4435 (preferred)

@jefft0
Copy link
Contributor Author

jefft0 commented Jul 1, 2025

This other PR could also address your issue more effectively: #4435 (preferred)

Yes, it works for me. When #4435 is merged, I'll update this PR.

jefft0 added 2 commits July 1, 2025 17:14
Signed-off-by: Jeff Thompson <jeff@thefirst.org>
Signed-off-by: Jeff Thompson <jeff@thefirst.org>
@jefft0 jefft0 force-pushed the chore/add-many_inserts_stack_overflow-txtar branch from c07cf25 to d64bd11 Compare July 1, 2025 15:14
Copy link

codecov bot commented Jul 1, 2025

Codecov Report

Attention: Patch coverage is 12.50000% with 7 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
gnovm/pkg/gnolang/nodes.go 25.00% 2 Missing and 1 partial ⚠️
gnovm/pkg/gnolang/helpers.go 0.00% 2 Missing ⚠️
gnovm/pkg/gnolang/misc.go 0.00% 2 Missing ⚠️

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
📦 ⛰️ gno.land Issues or PRs gno.land package related 📦 🤖 gnovm Issues or PRs gnovm related review/triage-pending PRs opened by external contributors that are waiting for the 1st review
Projects
Status: No status
Status: In Review
Development

Successfully merging this pull request may close these issues.

3 participants