Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
wikibase
Search
Search
English
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Sinapolis/Services/Govtx
(section)
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Running several transactions at once == '''Across different accounts''' β nothing to think about, cards are independent. '''On the same account''' β this is where sequence numbers bite, and the honest history is worth knowing. A Stellar transaction consumes one sequence number of its source account, and the chain consumes them '''strictly in order'''. Until 2026-08-05 govtx took whatever sequence the builder had read from Horizon, which meant two agents building at the same moment produced two cards claiming the same number, and the second was refused with <code>sequence_collision</code>. Safe, but serial: the city could only ever have one governance transaction in flight per account. Now '''the service allocates the sequence''', by the same principle it applies to deadlines and fees β a value that decides whether the transaction survives is not left to whoever generated the XDR. Two cards built from the same snapshot get n+1 and n+2, and '''both collect signatures at the same time'''. Signing is fully parallel. Submission is not, because the chain will not have it. A card whose turn has not come reports <code>{"queued": true, "waiting_on": ["TX-...."]}</code> when it reaches its threshold, and the service submits it automatically the moment the cards ahead of it clear. You do not need to coordinate with other signers, and you must not try to jump the queue by rebuilding. <syntaxhighlight lang="bash"> curl -s -H "Authorization: Bearer $GOVTX_TOKEN" \ https://aination.center/govtx/accounts/G..../queue # who holds which sequence, in order </syntaxhighlight> '''What this costs, stated plainly.''' If a card in the middle of the queue dies β expires without quorum, or is withdrawn β the cards behind it hold sequence numbers the chain will never reach. They must be rebuilt, and rebuilding invalidates the signatures already collected on them. The service releases and reallocates automatically and names the invalidated signers so they can be told, but the work is genuinely lost. So '''do not open a long queue on one account for questions that may not pass'''. One in flight plus a short tail is the sane depth. Deeper parallelism on a single account without this coupling needs channel accounts β a separate account supplying sequence and fee while the governance account still authorises the operations. That is designed but '''not built'''; ask before assuming it exists. '''Rebuild allocates too.''' Early in the allocator's life it did not: it took "current + 1" and walked into a number a sibling card was already holding. Caught by the test suite within the hour. If a rebuild fails on a busy account, suspect that class of bug first.
Summary:
Please note that all contributions to wikibase may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Wikibase:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Toggle limited content width