diff --git a/TODO.md b/TODO.md index c0170135..1e8ffdd7 100644 --- a/TODO.md +++ b/TODO.md @@ -28,6 +28,8 @@ - [x] Сделать список для txnid_t, кода sizeof(txnid_t) > sizeof(pgno_t) и вернуть размер pgno_t - [x] Избавиться от умножения на размер страницы (заменить на сдвиг). - [x] Устранение всех предупреждений (в том числе под Windows). +- [ ] добавить 'mti_reader_finished_flag' +- [ ] отрефакторить mdbx_freelist_save() - [ ] Перевод mdbx-tools на С++ и сборка для Windows - [ ] Заменить заглушки mdbx_version и mdbx_build - [ ] Актуализация README.md @@ -37,21 +39,22 @@ CI - [ ] Добавить в CI linux сборки для 32-битных таргетов Доработки API -- [ ] Добавить возможность "подбора" режима для mdbx_env_open() -- [ ] Дать возможность задавать размер страницы при создании БД. -- [ ] Изменение mapsize через API с блокировкой и увеличением txn, плюс поправить доку. -- [ ] Контроль размера страницы полного размера и кол-ва страниц при создании и обновлении. -- [ ] Инкрементальный mmap. +- [x] Дать возможность задавать размер страницы при создании БД. +- [x] Изменение mapsize через API с блокировкой и увеличением txn +- [x] Контроль размера страницы полного размера и кол-ва страниц при создании и обновлении. +- [x] Инкрементальный mmap. +- [x] Инкрементальное приращение размера (колбэк стратегии?). +- [ ] Поправить/Добавить описание нового API. - [ ] Возврат выделенных страниц в unallocated tail-pool. -- [ ] Инкрементальное приращение размера (колбэк стратегии?). +- [ ] Добавить возможность "подбора" режима для mdbx_env_open() - [ ] Переименовать в API: env->db, db->tbl Тест +- [ ] Додумать имя и размещение тестовой БД по-умолчанию. - [ ] Реализовать cleanup в тесте - [ ] usage для теста - [ ] Логирование в файл, плюс более полный progress bar - [ ] Опция игнорирования (пропуска части теста) при переполнении БД -- [ ] Додумать имя и размещение тестовой БД по-умолчанию. - [ ] Базовый бенчмарк Отладка @@ -63,7 +66,8 @@ CI - [ ] Валидатор страниц БД по номеру транзакции: ~0 при переработке и номер транзакции при выделении, проверять что этот номер больше головы реклайминга и не-больше текущей транзакции. -- [ ] Добавить free_backlog в meta +- [ ] Размещение overflow-pages в отдельном mmap/файле с собственной геометрией. +- [ ] Разместить free_backlog в конце meta - [ ] Валидатор страниц по CRC32, плюс контроль номер транзакии под модулю 2^32. - [ ] Валидатор страниц по t1ha c контролем снимков/версий БД на основе Merkle Tree. - [ ] Возможность хранения ключей внутри data (libfptu)