Tengo 5 clientes configurados (1 arranque, 1 geth, 3 firmantes que usan Clique): la mayoría de las veces funcionan sin problemas y comienza la minería, a veces la minería simplemente se detiene sin advertencia ni mensaje de problema/error.
En otra ocasión, noté que después de llegar a un consenso sobre un firmante externo adicional, la minería también se detendrá: he tratado de encontrar información sobre el orden en que los firmantes se turnan y qué puede evitar que la minería suceda, mirando el código parece que los firmantes se eligen más por tiempo que al azar, pero ¿puede un firmante que pierde su "turno" por cualquier motivo paralizar o evitar que los otros nodos firmen/validen bloques? Me arriesgaría a adivinar que este no es el caso, pero parece que no puedo resolver el problema y está haciendo que mi red de desarrollo sea inútil. Sé que no estoy dando mucho para continuar, pero no hay errores como los habituales, como "como un bloque mal propagado".
por lo que vale, estoy ejecutando mis firmantes con esto
```
geth --datadir ~/test-net/data --mine --cache=1024 --syncmode 'full' --bootnodes="enode://enodeurlgoeshere@ipgoeshere:port" --networkid 47592 --rpc --rpcapi admin,db,eth,debug,miner,net,txpool,personal,web3 --rpcport "8545" --rpcaddr "0.0.0.0" --rpccorsdomain "*" --unlock 914be90b2a0dd6a5b0789c2cee5836dd1f1c030 --password <(echo "password") console --nat "extip:pubIPgoeshere"
```
y este es el resultado de la firma cuando se detiene
```
INFO [03-28|18:15:34] Commit new mining work number=21271 txs=0 uncles=2 elapsed=315.821µs
INFO [03-28|18:15:34] Successfully sealed new block number=21271 hash=0e4d19…b0854b
INFO [03-28|18:15:34] 🔨 mined potential block number=21271 hash=0e4d19…b0854b
INFO [03-28|18:15:34] Commit new mining work number=21272 txs=0 uncles=2 elapsed=434.638µs
INFO [03-28|18:15:34] Signed recently, must wait for others
INFO [03-28|18:23:07] Regenerated local transaction journal transactions=0 accounts=0
INFO [03-28|19:23:07] Regenerated local transaction journal transactions=0 accounts=0
INFO [03-28|20:23:07] Regenerated local transaction journal transactions=0 accounts=0
INFO [03-28|21:23:07] Regenerated local transaction journal transactions=0 accounts=0
```
Cuando tienes 3 firmantes, al menos 2 tienen que estar en línea y tener la eth.coinbase
cuenta desbloqueada para poder seguir sellando nuevos bloques. De lo contrario, el proceso de sellado se detiene con "Firmado recientemente, debe esperar a otros".
Si está seguro de que sus selladores están en línea, entonces la única explicación lógica es que el desbloqueo de su cuenta se ha agotado (el valor predeterminado en geth es 5 minutos) y la cuenta del sellador está bloqueada nuevamente. Por favor, compruebe eso. Puedes desbloquear por tiempo ilimitado conpersonal.unlockAccount(eth.coinbase, "pwd", 0)
Consulte también " ¿Cómo desbloquear cuentas mediante programación después de que se haya iniciado el nodo? "