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
|
## 2023-03-23
|
||||||
|
|
||||||
TODO: ref-block-download-monitor
|
TODO: ref-block-download-monitor
|
||||||
|
|
Loading…
Reference in New Issue