Un archivo de medianoche puede volver en la altura de bloque correcta y aun así fallar la única solicitud que mi aplicación de blobs realmente necesita: dámelo el sidecar.
Las transacciones de blobs dejan un hash de blob KZG versionado en la cadena, pero la carga útil se recupera por separado mediante Rusk a través del hash del blob o del compromiso. Eso significa que el registro de la cadena y el cuerpo del blob no viven bajo el mismo supuesto de recuperación.
La herramienta de archivo hace explícita esta separación. Los objetos de blob se almacenan por separado, la cobertura se prueba en rangos contiguos de bloques y un checkpoint de archivo solo está completo cuando su estado correspondiente, los datos del archivo y la cobertura de blobs coinciden.
Así que si respaldo el estado de la cadena y los índices del archivo, pero trato el almacenamiento de blobs como una caché desechable, la recuperación puede verse saludable. Los bloques están ahí. Los hashes de transacciones están ahí. Mi aplicación pide un sidecar antiguo y no obtiene nada.
Ese es el fallo que probaría antes de llamar a un archivo de Dusk restaurado. Elige un blob histórico finalizado, resuelve su hash reportado por la cadena, recupera el sidecar y luego verifica su compromiso y su prueba.
Para mí, “bloque restaurado” no es “datos restaurados” cuando la aplicación depende de las cargas útiles de blobs de Dusk.
#dusk $DUSK @Dusk
Las transacciones de blobs dejan un hash de blob KZG versionado en la cadena, pero la carga útil se recupera por separado mediante Rusk a través del hash del blob o del compromiso. Eso significa que el registro de la cadena y el cuerpo del blob no viven bajo el mismo supuesto de recuperación.
La herramienta de archivo hace explícita esta separación. Los objetos de blob se almacenan por separado, la cobertura se prueba en rangos contiguos de bloques y un checkpoint de archivo solo está completo cuando su estado correspondiente, los datos del archivo y la cobertura de blobs coinciden.
Así que si respaldo el estado de la cadena y los índices del archivo, pero trato el almacenamiento de blobs como una caché desechable, la recuperación puede verse saludable. Los bloques están ahí. Los hashes de transacciones están ahí. Mi aplicación pide un sidecar antiguo y no obtiene nada.
Ese es el fallo que probaría antes de llamar a un archivo de Dusk restaurado. Elige un blob histórico finalizado, resuelve su hash reportado por la cadena, recupera el sidecar y luego verifica su compromiso y su prueba.
Para mí, “bloque restaurado” no es “datos restaurados” cuando la aplicación depende de las cargas útiles de blobs de Dusk.
#dusk $DUSK @Dusk


