Comment démarrer à une hauteur de bloc différente ?

... 2022-7-7 About 1 min

# Comment démarrer à une hauteur de bloc différente ?

# Guide vidéo

# Introduction

Par défaut, tous les projets de démarrage commencent à synchroniser la blockchain à partir du bloc de genèse. En d'autres termes, à partir du bloc 1. Pour les grandes blockchains, cela peut prendre des jours, voire des semaines, pour une synchronisation complète.

Pour lancer la synchronisation d'un nœud SubQuery à partir d'une hauteur non nulle, il suffit de modifier votre fichier project.yaml et de changer la clé startBlock.

Vous trouverez ci-dessous un fichier project.yaml dans lequel le bloc de départ a été fixé à 1 000 000.

specVersion: 0.0.1
description: ""
repository: ""
schema: ./schema.graphql
network:
  endpoint: wss://polkadot.api.onfinality.io/public-ws
  dictionary: https://api.subquery.network/sq/subquery/dictionary-polkadot
dataSources:
  - name: main
    kind: substrate/Runtime
    startBlock: 1000000
    mapping:
      handlers:
        - handler: handleBlock
          kind: substrate/BlockHandler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# Pourquoi ne pas commencer à zéro ?

La principale raison est que cela peut réduire le temps de synchronisation de la blockchain. Cela signifie que si vous n'êtes intéressé que par les transactions des 3 derniers mois, vous ne pouvez synchroniser que la valeur des 3 derniers mois, ce qui signifie moins de temps d'attente et vous pouvez commencer votre développement plus rapidement.

# Quels sont les inconvénients de ne pas partir de zéro ?

L'inconvénient le plus évident est que vous ne serez pas en mesure de rechercher des données sur la blockchain pour les blocs que vous ne possédez pas.

# Comment déterminer la hauteur actuelle de la blockchain ?

Si vous utilisez le réseau Polkadot, vous pouvez vous rendre sur le site https://polkascan.io/ (opens new window),sélectionner le réseau, puis afficher le chiffre "bloc finalisé".

# Dois-je faire une reconstruction ou un codegen ?

Non. Comme vous modifiez le fichier project.yaml, qui est essentiellement un fichier de configuration, vous n'aurez pas à reconstruire ou à régénérer le code typecript.

Last update: July 7, 2022 09:05