Attribués une fois après une réponse correcte.
Suivre exécution et annulation
À connaître avant : Un état partagé et des comptes · Le gas : payer le travail effectué
Parcours de lecture · 10 / 41 · Intermédiaire
L’EVM exécute des instructions de manière déterministe.
L’essentiel
L’EVM exécute des instructions de manière déterministe. Les nœuds qui partent du même état et exécutent les mêmes opérations doivent retrouver le même résultat. Un contrat ne peut donc pas récupérer librement un cours sur un site web pendant l’exécution : cette donnée doit être introduite par un mécanisme défini, tel qu’un oracle.
Le mécanisme
Un contrat peut appeler d’autres contrats. Cette composabilité permet de combiner échange, emprunt et remboursement dans une seule transaction. Si une condition essentielle échoue et provoque un revert global, les changements d’état de cette transaction sont annulés, mais les frais du calcul effectué restent dus.
Les points d’attention
Du code déployé peut être immuable, tandis qu’un système de proxy peut permettre de remplacer la logique utilisée. L’adresse seule ne prouve donc pas l’absence de pouvoir d’administration. Il faut examiner les droits de mise à jour, les délais et les contrôles autour des clés.
Comprendre en profondeur
L’EVM exécute des instructions de manière déterministe sur un état donné. Le stockage d’un contrat persiste entre transactions ; la mémoire temporaire d’exécution ne persiste pas. Un appel peut invoquer un autre contrat, puis d’autres programmes. Cette composition est utile mais élargit le comportement à examiner derrière une action apparemment simple.
Limites et erreurs fréquentes
Un revert annule les changements dans le périmètre concerné, tandis que le gas consommé reste important. L’appelant peut gérer volontairement un sous-appel échoué : tout échec interne ne signifie donc pas échec global. Un proxy modifiable ajoute une distinction : l’adresse appelée peut déléguer son comportement à une implémentation modifiable par gouvernance ou administrateur.
Le mécanisme en un schéma
- 01État initial
- 02A appelle B
- 03Réussite ou échec géré
- 04Valider ou annuler le périmètre
Ces repères représentent des notions liées, pas nécessairement des étapes successives.
Lire l’explication
L’EVM exécute des instructions de manière déterministe sur un état donné. Le stockage d’un contrat persiste entre transactions ; la mémoire temporaire d’exécution ne persiste pas. Un appel peut invoquer un autre contrat, puis d’autres programmes. Cette composition est utile mais élargit le comportement à examiner derrière une action apparemment simple.
Replacez le mécanisme dans son contexte
Le contrat A enregistre un ordre, appelle B, puis exige un résultat positif. B échoue et A annule. Suivez l’ordre, le mouvement de jetons et les frais. Comparez ensuite avec A qui intercepte l’échec et continue sans déplacer les jetons.
Appliquer dans l’atelier →Ce que ce mécanisme ne garantit pas
Un revert annule les changements dans le périmètre concerné, tandis que le gas consommé reste important. L’appelant peut gérer volontairement un sous-appel échoué : tout échec interne ne signifie donc pas échec global. Un proxy modifiable ajoute une distinction : l’adresse appelée peut déléguer son comportement à une implémentation modifiable par gouvernance ou administrateur.
La distinction qui change l’analyse
Un appel peut consommer du travail avant d’être annulé. Les changements d’état tentés sont annulés, sans rendre la tentative gratuite. Séparez statut, état résultant et frais dans votre lecture de l’explorateur.
À vous de l’expliquer
Reprenez le cas ci-dessus. Nommez ce qui est établi, ce qui reste à vérifier et la preuve qui permettrait de conclure. Une réponse solide traite les deux côtés du schéma.
Appliquer la leçon à un cas
Le contrat A enregistre un ordre, appelle B, puis exige un résultat positif. B échoue et A annule. Suivez l’ordre, le mouvement de jetons et les frais. Comparez ensuite avec A qui intercepte l’échec et continue sans déplacer les jetons.
Un reçu positif indique seulement que l’exécution globale n’a pas été annulée. L’événement économique attendu peut manquer. Comparez adresse du contrat, événements décodés et soldes finaux à l’action prévue. Les journaux d’une exécution annulée ne sont pas conservés comme événements réussis de cette transaction.
Les termes de cette leçon
- Oracle
- Un mécanisme fournissant à un contrat des informations provenant d’un autre contexte.
Préparer une note de correction
Décrivez le passage et la correction proposée. Vous pourrez copier cette note pour la partager ; rien n’est envoyé. N’incluez aucune donnée personnelle ou confidentielle.