Pregunta 7

index: batch db writes during initial sync by furszy · Pull Reques...

arejula27 19/05/2026 22:40
Pregunta 7-> Con el batching, si ocurre una reorg mientras el índice procesa un batch [N, N+499] y el fork point está en N+200, ¿qué debería ocurrir? ¿Cómo lo maneja el código actual?
27/05/2026 18:25
nos acercamos al final
Pol Espinasa 27/05/2026 18:26
Se procesa el batch entero, y en el siguiente batch el nodo se da cuenta que ha habido un fork
👍🏻 3
27/05/2026 18:26
esto hace que se procesen bloques y se haga flush de datos innecesarios
arejula27 27/05/2026 18:27
Al terminar ese batch, la siguiente llamada a NextSyncRange detecta que pindex ya no está en la cadena activa
furszy 27/05/2026 18:28
aquí entramos en tema prioridad de proceso.
arejula27 27/05/2026 18:29
dato: El test initial_sync_reorg cubre este escenario
👍 2
furszy 27/05/2026 18:29
qué supone más beneficio para el nodo: disminuir cs_main locks, para poder procesar más información, a costo de el edge case de escribir datos innecesarios de los indexes durante reorg, los cuales no son habituales.
arejula27 27/05/2026 18:30
es muy dificil que ocurra un reorg durante un IBD, mientras que el coste de retenercs_main se sufre continuamente
👌 1
Pol Espinasa 27/05/2026 18:31
puede haber reorg durante IBD? no tenemos el pre-sync de headers que deberia evitar esto tambien?
👀 1
arejula27 27/05/2026 18:32
ahi me pillas
> 27/05/2026 18:32
Y si es un nodo que no es header-first?
arejula27 27/05/2026 18:33
yo diria que si dos nodos te mandan distintas cadenas con distinto pow se puede dar una reorg
27/05/2026 18:33
pero lo puedo mirar mas a fodno si quieres @Pol Espinasa y respondo otro dia
Pol Espinasa 27/05/2026 18:34
porque eso te proteje de un ataque que es el low difficulty block spam