[Date Prev][Date Next] [Chronological] [Thread] [Top]

Repairing a lmdb database

Hi All.

I am writing a wrapper for Lmdb for the Crystal language.  During the process of writing my code started hanging when attempting to open a transaction.  At first I thought I was calling the C functions wrong but it turned out to be some sort of a corruption in the database itself. I deleted the database directory and the code started working fine again.

At this point all my code did was to open an environment, set some parameters (max readers and such) and some flags (specifically NO_TLS).  I had not attempted to open a database yet as I need a transaction to open a database. I am a little worried that the database caused a hang like this but I will go forward and continue to write the wrapper and see if it happens again.  

Does anybody have any clues as to why the environment could have corrupted like this? What do I do if it happens again?