Solución de problemas

From Mina Wiki
Jump to navigation Jump to search

Autor: Gareth Davies

La red de pruebas (Testnet) tiene frecuentes actualizaciones, por lo tanto, manténgase actualizado y revise con frecuencia Discord para ver si hay nuevos lanzamientos con correcciones, así como información actualizada para el archivo de pares.

General

El servidor se cae con: failed to synchronize epoch ledger

Este problema quedó resuelto con la versión 880882e45e48aaf987aca191f488c7f65609c305. Asegúrese de haber actualizado y vuelva a descargar el archivo peers.txt.

Estoy atascado a una altura de bloque de 1 y una longitud máxima de bloque observada de 1

La salida del coda client status es similar a la siguiente:

Block hight.png

Este problema quedó resuelto con la versión 9652f8ee092ea77e29f5ab49fa0a295e36743e8b. Asegúrese de haber actualizado. Es normal ver una altura de 1 mientras se inicializa el daemon. Pueden pasar varios minutos (de 20 minutos a una hora) antes de que el nodo avance a la fase de actualización.

¿Mi " Max observed block length " es 1 pero la altura de mi bloque es correcta?

Este problema quedó resuelto con la versión 9652f8ee092ea77e29f5ab49fa0a295e36743e8b. Asegúrese de haber actualizado. Después de la actualización, debe dejar que el demonio se ejecute (de 20 minutos a una hora) y el error debería resolverse por sí solo.

Mi nodo está atascado en cátchup / la altura del bloque no se actualiza

Cuando el nodo está sincronizado, Block height debe ser igual a Max observed block length, como se ve en la salida coda client status y debe coincidir con la altura actual de la red, como se muestra en la captura de pantalla siguiente:


Troubleshooting.png


Cuando se inicia el nodo, y el nodo está en un bootstrap/catchup state, la altura del bloque mostrará 1 o un número que está a unos cientos de bloques de la mejor longitud de bloque actual (pero mucho mayor que 1). Durante el bootstrap, la altura del bloque no se actualizará de forma incremental, excepto cuando se produzcan nuevos bloques y saltará a la altura correcta cuando se complete la recuperación. Sé paciente; este proceso puede tardar varias horas en completarse y varía según el hardware utilizado.

¿Me sincronicé a la height 1 / no a la altura actual de la red?

Lo que importa es que la longitud actual de la cadena de bloques, como se ve en coda client status, es igual a la altura actual de la red. Si su nodo informa que está sincronizado a la altura incorrecta, eventualmente debería ingresar a la fase de actualización para que el nodo alcance la altura correcta. Ocasionalmente, puede cambiar entre ponerse al día y sincronizarse si la red ve alguna bifurcación corta que intenta ponerse al día.

¿El nodo falla con el mensaje "Failed to find any peers, crashing as this is not a seed node "?

Primero, asegúrese de haber descargado el archivo de pares más reciente del correo electrónico recibido; la URL no cambia, pero la lista de pares se actualiza con mucha frecuencia.

A continuación, según el método que utilice para iniciar el nodo, asegúrese de pasar la ruta correcta a este archivo. Por ejemplo, si usa systemd, debe haber un archivo peers.txt en su directorio personal.

Este error debería haberse resuelto con una actualización reciente, así que asegúrese de estar en la última versión y tener el último archivo de pares.

¿Veo mensajes o errores extraños en los registros?

Los registros tienen mucha data y, a menudo, contienen mensajes que parecen "atemorizantes", como fallas en la conexión, etc. Como regla general, si el mensaje no es fatal y el nodo no falla, es probable que no haya nada de qué preocuparse. Los siguientes mensajes se consideran "normales":

Logs errors.png

¿Por qué la altura de mi blockchain aumenta a más de 1000 y luego se atasca?

Solo necesitamos los últimos k (290) bloques de la cadena de bloques para producir bloques. Entonces, una vez que se completa el bootstrap, la raíz de la frontera de transición (esencialmente su almacén local de bloques) debe ser la altura máxima actual menos k (290). La parte del proceso de sincronización que lleva mucho tiempo es descargar los k bloques que faltan, que es la función de catchup. Durante el catchup, no verá el aumento de la altura de su bloque (aparte de los nuevos bloques producidos en la red) hasta que salte a la altura actual y se sincronice. Esto lleva tiempo, ¡así que déjelo funcionando!

¿Qué puertos deben estar abiertos?

El único puerto que debe estar abierto para que el daemon se comunique con sus pares es el puerto TCP 8302.

El puerto de cliente 8301 nunca debe estar expuesto a Internet. Puede haber referencias desactualizadas a otros puertos que alguna vez se usaron antes pero que ya no son necesarios.

¿Mi nodo se cae cada varios minutos?

Si el nodo se bloquea rápida y repetidamente, es probable que se trate de un problema de configuración, como permisos incorrectos en la clave privada, no encontrar pares debido a transferir incorrectamente el archivo peers.txt, una contraseña incorrecta o caracteres especiales en la contraseña. Las últimas líneas de los registros deberían proporcionar más información sobre el problema.

Cerré mi terminal SSH y el nodo se bloqueó.

Si inicia el daemon mina en primer plano, una vez que se separe de él, se apagará (mediante una señal SIGINT). Para ejecutar el proceso en segundo plano para que pueda separarse, tiene muchas opciones:

  • Inicie el daemon con el indicador -background.
  • Ejecutar como un servicio systemd (ver los documentos).
  • Ejecutar con Docker (consulte los documentos).
  • Ejecute el daemon en un multiplexor de terminal como screen o tmux del que puede desconectarse para mantener el proceso en ejecución.

Se recomienda la ejecución como servicio / a través de Docker, ya que tienen la ventaja de reiniciar automáticamente si su nodo falla.

¿Qué permisos se requieren para el directorio de claves?

El directorio de claves debe tener 700 permisos y el archivo de clave privada 600. Por ejemplo, estos comandos actualizan los permisos cuando el directorio de claves está dentro de su directorio de inicio y su archivo de clave privada se llama my-wallet:

chmod 700 ~/keys chmod 600 ~/keys/my-wallet

Recibo un error. ¿No puedo determinar nuestra IP desde Internet?

Si ve couldn't determine our IP from the internet, use -external-ip, entonces el daemon no pudo determinar su propia IP de estos proveedores de servicios. Es posible que su firewall esté bloqueando las solicitudes HTTP / S o que tenga una conexión de red mal configurada.

Para evitar esto, pase el indicador -external-ip <your-ip-address> al iniciar el daemon Mina. Para obtener su dirección IP externa, ejecute curl ifconfig.me.

¿Necesito configurar el port forwarding manualmente?

El nodo Mina hace todo lo posible por configurarse para poder conectarse a la red sin que usted tenga que hacer ningún trabajo adicional. Sin embargo, esto puede fallar, dependiendo de su enrutador y la configuración de red. En este caso, es posible que deba configurar manualmente el puerto externo.

Una causa común de esto son los enrutadores que no admiten UPnP, un protocolo que permite al nodo configurar el reenvío de puertos automáticamente. Si experimenta este tipo de problema, busque el modelo de su enrutador y busque el port forwarding <modelo> y siga las instrucciones para realizar el port forwarding desde su enrutador a su dispositivo que ejecuta el nodo Mina. Deberá abrir el puerto TCP 8302 de forma predeterminada.

Nota: Al ejecutar Mina en la nube, debe configurar grupos de seguridad para su proveedor de nube.

¿Puedo ejecutar en un dispositivo basado en Raspberry Pi / ARM?

No. Solo se admite x86-64 y no ARM.

¿Tengo caracteres especiales en mi contraseña y está dando un error?

Debe usar comillas alrededor de la contraseña, es decir, "MY_PASSWORD" y / o puede evitar la restricción de uso de caracteres especiales como $ en la contraseña usando el carácter \.

¿Recibo un error de permisos al ejecutar el comando docker?

Agregue el usuario actual al grupo de Docker según este artículo. Puede prefijar el comando con sudo, pero esto no se recomienda.

Veo monitor.ml.Error "Timed out getting connection from process" en macOS?

Si está ejecutando Mina en macOS y ve el siguiente error de tiempo de espera monitor.ml.Error " Timed out getting connection from process", deberá agregar su nombre de host a /etc/hosts ejecutando lo siguiente:

* $ hostname to get your hostname
* Open the /etc/hosts file and add the mapping:

Host database.png

¿Debo permitir " Accept incoming connections "?

Si ve una o más advertencias como las siguientes, elija "Allow":

Do you want the application "mina" to accept incoming network connections?

¿Qué hardware necesito?

Consulte los requisitos de la red de pruebas actual aquí. Algunos proveedores de VPS de nivel inferior pueden tener problemas para producir bloques dentro del intervalo de tiempo. Si continúa experimentando bloques faltantes, es posible que desee probar un hardware más potente.

¿Me gustaría que el servicio mina se iniciara en el arranque?

Si usa systemd para administrar el demonio Mina, no se reiniciará automáticamente al reiniciar la máquina. Puede ejecutar manualmente el servicio a través de systemctl --user start mina o ejecutar systemctl --user enable mina para que el servicio se inicie automáticamente al arrancar.

¿Qué debo agregar para CODA_PRIVKEY_PASS?

Cuando generó un par de claves y lo envió para participar en la red de prueba, creó una contraseña. Utilice la contraseña que creó para el valor de CODA_PRIVKEY_PASS.

Recibo un error acerca de ~ / .coda-config / daemon.json falta?

Este es un archivo opcional para pasar opciones de configuración al daemon (en lugar de pasar a través de la línea de comandos). El daemon lo busca por defecto, lo que da como resultado un error si no lo incluye. Simplemente ignore este error (a menos que intente incluirlo) ya que no es fatal y el demonio se iniciará normalmente.

Veo mensajes sobre pruebas / verificaciones que son eliminados periódicamente

Esto es normal, y estos procesos actualmente se eliminan y reinician periódicamente. Ignore estos mensajes a menos que resulten en un error fatal.

¿Me bloqueé con "Error fatal: memoria insuficiente"?

Este es un problema común: vea este problema en GitHub y agregue cualquier información relevante con registros y reinicie su nodo.

¿Puedo proporcionar mi contraseña mediante una variable de entorno?

Si. Configure la variable de entorno CODA_PRIVKEY_PASS como su contraseña.

Estoy intentando instalar en Ubuntu 20.04 / Debian 10 y obtengo errores de dependencia.

Consulte esta guía para resolver manualmente las dependencias necesarias. Alternativamente, use un sistema operativo compatible (Ubuntu 18.04 / Debian 9) o use Docker.

¿Mi estado de sincronización esta desconectado?

Este estado indica que no ha recibido ningún mensaje de pares durante los últimos ~ 24 minutos. Asegúrese de estar utilizando el archivo peers.txt más reciente. Puede agregar nuevos pares a un nodo en ejecución mediante este comando:

cat peers.txt | xargs -I % coda advanced add-peers %

Cuentas / Transacciones

¿Qué tarifa debo usar para enviar una transacción / mi transacción está bloqueada como pendiente?

Las transacciones que se incluyen en bloques se priorizan por sus tarifas de transacción. Si hay muchas transacciones pendientes, primero se incluirán las transacciones con la tarifa más alta. Por lo tanto, aumentar sus tarifas es la mejor manera de asegurarse de que su transacción esté incluida. Para ver el grupo de transacciones en un nodo en ejecución, puede usar el siguiente comando (necesitará instalar jq, que se usa para formatear la salida del siguiente comando, por ejemplo, sudo apt install jq):

coda advanced pooled-user-commands | jq . | grep fee | sort | uniq -c | sort -n

     1     "fee": "0.031",
     5     "fee": "0.1",

Fuente: https://hackmd.io/@garethtdavies/rJg5G_BiD

Traducción: []☠[] 𝕮𝖔𝖗𝖘𝖆𝖗𝖎𝖔 [|☠|]#1216