Esta es una traducción automática. El original en inglés está aquí: Update 8 December, 2022
¡Es hora de testnet! Sí amigos, es hora de desempolvar esos terminales y encender esos clientes una vez más, las redes de prueba están de vuelta en la ciudad. No esperamos que este sea perfecto y hay algunos problemas en los que estamos trabajando con las comunicaciones entre clientes y personas mayores, pero realmente agradeceríamos su ayuda para probar algunas cosas, incluida la retención de datos y los tiempos de espera. Para evitar complicaciones, hemos eliminado la funcionalidad de división de secciones por ahora, por lo que probaremos una gran sección. @joshuef explica más a continuación.
Progreso general
Todo el equipo ha estado trabajando para poner en marcha la red de prueba durante la última semana, pero, por supuesto, otro trabajo continúa en segundo plano.
@bochaco ha estado investigando un problema de conexión/reconexión de un cliente en el que parece que los mensajes se pierden. Puede ser un problema de quinn/qp2p, pero se requiere más investigación. Esperemos que esto se solucione para la próxima red de prueba.
Mientras tanto, @roland ha estado trabajando en la implementación de SectionTree
, el registro de todas las claves de sección hasta génesis que prueba que los usuarios están en el red correcta.
La implementación del protocolo de consenso de ABBA también avanza, con Mostafa y @davidrusu haciendo algunos ajustes finales. Una vez implementado, el siguiente paso será integrar VCBC con ABBA para llegar al protocolo de consenso completo MVBA (Multi-Value Byzantine Agreement).
@oetyng ha estado ordenando algunas operaciones, incluida la forma en que informamos el almacenamiento en adultos (un PR que también allana el camino para evitar que los nodos se llenen alguna vez ), y @chriso está buscando reenviar registros de nodos para ELK, la principal pila de observabilidad que usamos para monitorear lo que sucede a nivel de nodo.
Una nueva red de prueba
Como mencionamos en la última actualización, hemos estado en las trincheras por un tiempo, pero ahora estamos comenzando a ver las cosas de manera integral una vez más. Y queremos hacer eso involucrando a la comunidad tanto como sea posible.
Así que tenemos una red de prueba de 25 nodos. Cada nodo tiene 50 GB de espacio. Nuestro objetivo es:
- Asegúrese de que no perdamos datos hasta que los nodos estén llenos. (Estamos trabajando en cómo lidiar con los nodos llenos). Hasta entonces, nuestras pruebas actuales han mostrado que los datos se mantienen bastante felices siempre que no estemos llenando nodos. (Entonces, los nodos completos anunciarán el final de esta ejecución).
- Que no se unan los nodos. Hemos limitado esto en los propios nodos para eliminar una variable de testnet. (También somos conscientes de algunos problemas de AE posteriores a la división, y tenemos una solución pendiente para ellos, por lo que no queremos sumergirnos allí ahora).
-
Obtenga un mejor manejo de ciertos tiempos de espera. Tiempo de espera de comunicación bidireccional para ancianos-> adultos después de
7s
justo ahora. Cliente->Anciano en 45s. Queremos ver cuán relevantes son esos valores bajo carga.
Involucrado
Como se indicó anteriormente, no estamos buscando verificar las uniones de nodos en este momento, ya que tenemos un bloqueador posterior a la división que debemos probar más antes de que podamos solucionarlo.
Como tal, solo revisaremos los datos de clientes “seguros” y PUT/GET. Le pedimos a la gente que no cargue más de 10 MB a la vez para ver cómo van las cosas allí.
Lamentablemente, todavía no tenemos el lanzamiento completo. (Estamos cambiando nuestro flujo de prueba para verificar todos los PR que ingresan a main en su propia red de prueba ahora; una vez que esté dentro, los lanzamientos de “main” deberían ser mucho más fluidos). Así que creamos uno manualmente y cargamos binarios seguros
aquí:
Nota: macOS no ejecutará el binario porque no puede verificar al desarrollador. Para eludir esto, ejecuta xattr -d com.apple.quarantine ./safe
. Luego, asegúrese de que se pueda ejecutar con chmod +x ./safe
. Luego, la CLI se puede ejecutar con ./safe
.
Verse envuelto:
- eliminar
~/.safe
- descargue su contenedor
seguro
relevante del lanzamiento y guárdelo en/usr/local/bin
en mac/linux o%USERPROFILE%.\safe\cli
en Windows.- Nota para los usuarios de Windows: es posible que desee agregar el directorio bin anterior a PATH, alternativamente, puede usar ‘./safe’ cuando se ejecuta desde el directorio para todos los cmds ‘seguros’ en curso.
- ejecute
safe --version
para asegurarse de que está en la versión correcta (0.67.0
de la CLI). - ejecute
redes seguras agregue wild-testnet https://sn-node.s3.eu-west-2.amazonaws.com/testnet_tool/main/network-contacts
las redes seguras cambian wild-testnet
Y deberías estar listo para irte
Ejemplo: Subir un archivo
Lo más simple que podemos hacer es subir un archivo usando el comando files put
:
$ archivos seguros poner ./to-upload/file1.txt
FilesContainer creado en: "safe://hyryyryynamznbfsgn7ccfquqmx6y8yzhq6tn7uzz775hrkyj4g8ipcy3ke6yeuy?v=h9jxxwwpy1cwf3pnb86ahkfk5ju8eb3miegnuehc99f5r5x83d9go"
+ ./para cargar/archivo1.txt seguro://hy8oycyyb7jfqswhktzn9ahhk1hnz53dhfnrfp6h34emgrmjzggro75eikpoy
Esto creará un contenedor con un solo archivo. Las URL safe://
asignadas aquí se refieren al contenedor y al archivo, respectivamente. Esto significa que el archivo es direccionable usando safe://hyryyryynamznbfsgn7ccfquqmx6y8yzhq6tn7uzz775hrkyj4g8ipcy3ke6yeuy/file1.txt
o su URL directa.
Obtenga más información sobre cómo cargar archivos en CLI docs.
Lo que es útil y los problemas de notificación
En este momento, mantén las cargas pequeñas. < 10MiB/archivo.
Se agregó un límite temporal y obtendrá un error si supera los 10 MiB. El error no es informativo actualmente, pero sabrás por el tamaño que se debe a que se ha superado este límite de tamaño de archivo temporal.
Es posible que vea problemas con el Cmd Ack Validation timeout
, (nuestros tiempos de espera deben marcarse mejor, consulte más arriba), esto significa que la red probablemente esté bajo carga, así que vuelva a intentarlo en unos minutos. Es posible que sus datos se hayan almacenado, pero no tan rápido como esperamos en este momento.
Si constantemente ve problemas para PONER datos o recuperar datos, tiene PUT. Ejecute su comando con el prefijo RUST_LOG=sn_client
(al menos en Ubuntu/Mac). El resultado allí, y los MsgId
s que se enviaron o fallaron serán clave para la depuración.
Intentaremos informar sobre los tamaños de datos almacenados en los nodos a medida que avanzamos, para que podamos ver si existe una correlación entre la capacidad y la confiabilidad.
La red está respaldada por una red de prueba un poco menos confiable (en cuanto a la conectividad del cliente) que hemos tenido durante toda la semana. La retención de datos ha estado bien allí, así que espero que continúe aquí (o se resaltará un error
)
La mayoría son datos de prueba no deseados, pero hay un pequeño conjunto de archivos jpg cargados en las siguientes xorurls para cualquiera que desee obtener algunos datos (por ejemplo, safe cat safe://hygoygym7tsj5hhyyykd1aqpw3djxea6om6xku568ahm7hy7gfn6q5gy7xr > 1.jpg
):
Esto es lo que estamos usando para verificar el almacenamiento de datos en este momento.
seguro://hygoygym7tsj5hhyyykd1aqpw3djxea6om6xku568ahm7hy7gfn6q5gy7xr
seguro://hygoygym19bdbzg6jakfzkmacxurpkbuphgsxi6af3aecugfqjfaq66shww
seguro://hygoygyq1xiofs8kx11jwkcguzuocd1xa5qp767bjjz39yrh44eo1mjkjch
seguro://hygoygypnrqirzo7r5w464mnda8s6sdpatyrco5pda1w8nh5appa3ycb98h
seguro://hygoygykajkeropyam6yihj9exdhn5o4b1pbjbeet4bazqo8m47ga3pw8mo
seguro://hy8ayqyjy9obx5kr5g9f1r95hshhfswt7yqh6cy9t34sap7zqid4ox7ucuo
seguro://hygoygyp8c1wy7ijrpnesz9cj7enf4ms9oxhmp5m4r4yw4pjcemgywekf9r
seguro://hygoygye13iznm1yxzpxp9seh6j8weh84c5ib3fq9mxozz4h6hb95o3uduo
seguro://hygoygycc11b4pmrcb97ro6ro3wxh3cfrgi7ctbiwyya8mkktq1j35ysmzh
seguro://hygoygykzkguckqygm985f5jrhcw87wiskbc97bottab47tq6fm9zm85f7r
seguro://hygoygyewnaj8o7za3qycckfy95o5j9gex6s3b8jygr9j48aiyzthc36ffo
seguro://hygoygykime3s7rup1ezeiqeqo1zy1o4bqmckewhriun889c64n4umxcyih
seguro://hygoygyc98c1ozh1cn9edxeworctuagt465zyybr61m8judfry4a4zycf8c
seguro://hygoygyqcq8bift7urnftiqxzn7d877ckwtk85haawg7oigm3bhn3r1dx7e
seguro://hygoygyk7dzmcqxm3q4np87unu6tb9d8qt44fowxgqrhjy1xs6xgt69hade
seguro://hygoygymq98z86j1oagpctmg7pnixz94ckekpgytu1jkb45du8xw49qrr4w
seguro://hygoygypoq7y31uedr7c6q6e3jaxhd94id3r8bwn7od3f79hgdj7xbqibjr
seguro://hygoygykw8iw7wt9o3c7w36hi5xc1coyjdmdfm6dima3y9ehefxipxkwg3w
seguro://hygoygyc67ozi6m9i9o8xq5wti7ysa4g6nodxetmdgw64g5pw1qmucheeac
seguro://hygoygyqsxzn4p6mjx7ggj98pqc4he53xk1c54kw3hq1967n4yga1nbo3iw
seguro://hygoygyxojetcr5553xfyjnfoh3ywge7grs8d7z66e8nf678stecagdkomw
seguro://hygoygyqf4au3yf7ouyi7imu1hty5qrsjppy1mj5uba5tahnxkmocys5g7h
seguro://hygoygyx41a9samc35ep6h7y6zwku5ess3377f8awtuwn44r1pc5w3ragky
seguro://hygoygyej97u6irwmgq1od4s8m6h8epbkgmmwqtghhhy1hbcsntizpjmh3c
seguro://hygoygypn9urw4mhoqfabnke71e8usekjeg8m54t1fkoeigdyr5srgsqoia
Enlaces útiles
- Sitio web de red segura
- Introducción a la red segura
- Aspectos básicos de la red
- Hoja de ruta
- Glosario
No dude en responder a continuación con enlaces a las traducciones de esta actualización para desarrolladores y los moderadores las agregarán aquí.
Como proyecto de código abierto, siempre estamos buscando retroalimentación, comentarios y contribuciones de la comunidad, así que no sea tímido, únase y creemos la red segura juntos.