Een transactie bevat één of meer instructies, de handtekeningen van accounts die de wijzigingen autoriseren, en een recente blockhash. Het netwerk verwerkt alle instructies in een transactie samen. Als een instructie mislukt, mislukt de hele transactie en worden alle statuswijzigingen teruggedraaid.
Een vereenvoudigd diagram met twee transacties
Transactiestructuur
Handtekeningen, berichtformaat (header, accountadressen, blockhash, gecompileerde instructies), binaire codering, grootte-budget en een SOL-overdrachtsvoorbeeld.
Versioned transactions
Legacy vs V0-formaat, Address Lookup Tables, ALT-resolutie en versie- vergelijking.
Transactiepijplijn
Volledige 8-fasen verwerkingspijplijn (ontvangst tot commit), het lezen van transactiedetails van het netwerk en validatiefoutreferentie.
Durable nonces
Offline ondertekening met durable nonces, nonce-levenscyclus, detectie, validatie- flow en faalgedrag.
Belangrijkste feiten
- Atomaire uitvoering: alle instructies slagen of worden allemaal teruggedraaid. Kosten worden nog steeds in rekening gebracht bij mislukking.
- Groottelimiet: maximaal 1.232 bytes, afgeleid van de IPv6 minimum MTU (1.280 bytes) minus 48 bytes voor netwerkheaders.
- Handtekeningen: elke ondertekenaar levert één 64-byte Ed25519-handtekening.
- Blockhash-vervaldatum: de recente blockhash van een transactie is geldig voor 150 slots.
Limieten
| Limiet | Waarde | Bron |
|---|---|---|
| Max transactiegrootte | 1.232 bytes | PACKET_DATA_SIZE |
| Max accounts per transactie | 64 | Afgedwongen limiet (128 wanneer increase_tx_account_lock_limit is geactiveerd, momenteel inactief) |
| Blockhash-vervaldatum | 150 slots | MAX_PROCESSING_AGE |
| Handtekeninggrootte | 64 bytes (Ed25519) | -- |
| Basiskosten per handtekening | 5.000 lamports | Kosten |
| Max uitgevoerde instructies | 64 (top-level + CPI's) | MAX_INSTRUCTION_TRACE_LENGTH |
| Max handtekeningen per pakket | 12 | MAX_SIGNATURES_PER_PACKET |
Is this page helpful?