Не нашел ничего в теме в документах. Интересно, насколько надежным и одновременным является T C, когда я не запускаю / не фиксирую транзакции явно, то есть в режиме «неявной транзакции».
Мне нужно записать только одну запись на транзакцию, т.е. нет пакетной записи , Но я хочу, чтобы эта запись была надежно записана на диск до того, как функция записи вернется. Тем не менее, я хотел бы по возможности избегать файлов WAL.
Интересует Ha sh DB, B + Tree DB, фиксированная длина DB.
EDIT. Чтобы быть в явном виде:
Документы говорят, что "файл базы данных не поврежден даже в случае катастрофической ситуации c". Но я не уверен, что «отсутствие искажения» означает, что данные записываются ACIDly.
Функции ... dbopen () для всех типов БД принимает флаг HDBOTSYN C, "который означает, что каждая транзакция синхронизирует обновленное содержимое с устройством ". Будет ли этот флаг работать, если я не начну транзакцию явно?
// Кстати, есть ли достойные альтернативы T C? Я имею в виду встроенные библиотеки C / C ++ с той же функциональностью и скоростью. KyotoCab inet ни в коем случае: это GPL; https://fallabs.com/license/ - 404, и мое электронное письмо об этом 404 не было получено ответа; не говоря уже о том, что они удалили DB фиксированной длины из K C.