NA> но многие пуржилки, после того, как все номера сообщений переделают, NA> то они и переправляют старый ластрид на новый.
Так и должно быть, а те - кто так не делают - кривые кривульки.
NA> Да, верно, ластрид не съедет. А если мне надо просто, уметь показывать NA> 10ое сообщение, не по порядку, а номер 10, и чтобы я мог его найти за NA> O(1) даже после пуржинья.
Ну, дык, устанавливаешь на него ластрид. После очистки базы он должен указывать на то же самое сообщение.
NA> Кстати, пример с ластридем показателен. Пуржилка должна обладать NA> знаниями о ластридерах как формат файла. А если ещё какой-то NA> опциональный индекс рядом хранить?
Есть и такой способ, но это уже за пределами формата самой базы.
NA> Надо учить все пуржилки на свете править этот какой-нибудь индекс NA> файл?
Нет. Тогда сама софтинка должна это уметь.
NA> А если пуржить с BaseMsgNum, и с дырками в середине, то получается NA> совместимость с любым софтом, которы ещё какие-то индексы к базе NA> хранит с боку, и _ничего_ не съедет.
Очистка базы для того и нужна, что бы так не было. Ты же не требуешь от sql базы совместимости с GoldEd?