mirror of https://github.com/voidlizard/hbs2
devlog
This commit is contained in:
parent
baa6e2ab02
commit
d39bc6cff9
|
@ -1,4 +1,43 @@
|
|||
|
||||
|
||||
## 2023-03-24
|
||||
|
||||
TODO: calculate-hash-only-once
|
||||
Вычислять блок только один раз в фунции
|
||||
записи блока. То есть, при приходе блока
|
||||
звать putBlock и разбирать его ответ.
|
||||
Интерфейс, получается, становится
|
||||
```
|
||||
putBlock :: Storage -> Block -> Either Code Hash
|
||||
```
|
||||
|
||||
|
||||
TODO: storage-data-compression
|
||||
Сжимать данные в storage. Вызывает много
|
||||
вопросов, хэш сжатого блока перестаёт
|
||||
соответствовать исходному контенту. Если перед
|
||||
передачей блок распаковывать, что бы на
|
||||
принимающией стороне хэш соответствовал --- то
|
||||
это бред. Если не распаковывать, то хэш не
|
||||
сойдется.
|
||||
|
||||
Выходом является, кажется, передача признака,
|
||||
что блок сжат, либо же проверка что пришло,
|
||||
определение, что блок был сжат, и распаковка.
|
||||
Это можно сделать, в принципе, в storage, путем
|
||||
оборачивания блока в какой-то конструктор,
|
||||
который будет пытаться разобрать storage. Тогда
|
||||
надо проверку хэша блока делать в storage. Тогда
|
||||
надо отличать ситуацию, когда мы не смогли
|
||||
записать блок от ситуации, когда не сошёлся хэш.
|
||||
Это меняет интерфейс записи, кроме того, что
|
||||
делать с асинхронной записью (enqueue?)
|
||||
|
||||
|
||||
Не пора ли разбивать девлог на куски, хоть его никто
|
||||
кроме меня и не пишет?
|
||||
|
||||
|
||||
## 2023-03-23
|
||||
|
||||
TODO: ref-block-download-monitor
|
||||
|
|
Loading…
Reference in New Issue