Skip to content

Improve the way settings upgrade transactions are submitted#927

Merged
Shaptic merged 2 commits intomainfrom
reliable-upgrades
Apr 10, 2026
Merged

Improve the way settings upgrade transactions are submitted#927
Shaptic merged 2 commits intomainfrom
reliable-upgrades

Conversation

@Shaptic
Copy link
Copy Markdown
Contributor

@Shaptic Shaptic commented Apr 8, 2026

I was running into an issue where I was seeing TRY_AGAIN_LATERs during the upgrade process:

stellar-core(node): Synced!; Publishing 1 queued checkpoints [7-7]: Waiting: resolve-snapshot
upgrades: soroban config: install contract: 117dc071167027fb442e788c85606a272518cc361e19bc35ba2c81bcbc23aa53 .. PENDING
stellar-core(node): Synced!
upgrades: soroban config: deploy contract: d19a4ad0de456cc587b6433732e63dc57378597e58170a9860eeafdc286676ba .. PENDING
upgrades: soroban config: upload config: 658606481f5c816558725ee1cdfb314862d8cff8df9e749b4dad131154d72187 .. TRY_AGAIN_LATER

This hardens that code path to actually react to the different /tx status codes.

Copilot AI review requested due to automatic review settings April 8, 2026 18:32
@github-project-automation github-project-automation bot moved this to Backlog (Not Ready) in DevX Apr 8, 2026
  - actually switch/case on status code
  - retries on TRY_AGAIN_LATER
  - decompose into functions
@Shaptic Shaptic force-pushed the reliable-upgrades branch from 9aa862f to b8f0ec2 Compare April 8, 2026 18:34
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR hardens the local-network Soroban config upgrade flow in start by handling /tx submission status codes explicitly and adding retries for transient TRY_AGAIN_LATER responses, reducing upgrade flakiness during startup.

Changes:

  • Added helper functions to submit Soroban config transactions with status-aware retry/abort behavior.
  • Reworked the upgrade pipeline to wait for ledger transaction count advancement after each submitted config-upgrade transaction.
  • Added retry logic when setting the configUpgradeSet key via the /upgrades endpoint.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Shaptic Shaptic enabled auto-merge (squash) April 10, 2026 18:59
@Shaptic Shaptic merged commit 8e0ca88 into main Apr 10, 2026
93 checks passed
@Shaptic Shaptic deleted the reliable-upgrades branch April 10, 2026 19:01
@github-project-automation github-project-automation bot moved this from Backlog (Not Ready) to Done in DevX Apr 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants