Это по замыслу:
Этот API должен использоваться для открытия БД, когда введенные значения ключа предназначены для удаления из БД в нестрогом интервале времени 'ttl', поэтому, это гарантирует, что введенные значения ключа будут оставаться в БД в течение как минимум времени ttl, и БД будет прилагать усилия для удаления значений ключа как можно скорее после ttl секунд их вставки
- со страницы RocksDB Wiki на TTL.
Это означает, что значения удаляются только во время сжатия, а устаревание не проверяется во время чтения.
Одна из хороших особенностей RocksDB заключается в том, что их источник вполне читабелен.Файлы, которые вы хотели бы посмотреть, это header и source для TtlDb
.В заголовке вы найдете сжатие, которое удаляет устаревшие значения (Filter
-подряд сжатия хорошо документирован в его заголовок ).В источнике TtlDb
вы сами убедитесь, что Get
не выполняет никаких проверок, является ли значение устаревшим.Он просто удаляет временную метку (которая просто добавляется к значению при вставке).