In Polkadot-based networks, including Substrate-based chains, the initial synchronization process can be influenced by the nodes' roles and configurations. Let's break down the concepts to understand how it works:
Bootnode: A bootnode is a well-known node that acts as a starting point for new nodes to join the network. When a new node starts up, it connects to one or more bootnodes to discover other peers on the network.
Archive Node: An archive node is a type of node that keeps a complete history of all data on the blockchain, including historical states and transactions. It is useful for performing historical data analysis but can be more resource-intensive compared to a full node.
Validator Node: A validator node is responsible for participating in the consensus process and producing new blocks. Validator nodes are crucial for the security and finality of the blockchain.
Now, when you run a node with the --validator flag, it is indicating that this node is a validator node, and it actively participates in block production and consensus. As a result, it will connect to other nodes, including bootnodes, to sync and contribute to the network's consensus.
On the other hand, when you run a node without the --validator flag, it becomes a non-validator or "passive" node, which only synchronizes the blockchain data but does not actively participate in block production. Such nodes may not require peer connections in the same way as validator nodes.
Regarding your specific question about the archive node not syncing when you run it without the --validator flag, it is possible that the network configuration or peer discovery mechanism is expecting validator nodes to connect to bootnodes for initial synchronization. This behavior might be specific to the particular network or node implementation you are using.