Open opens or creates a DB for the given storage. The DB will be created if not exist, unless ErrorIfMissing is true. Also, if ErrorIfExist is true and the DB exist Open will returns os.ErrExist error.

Open will return an error with type of ErrCorrupted if corruption detected in the DB. Corrupted DB can be recovered with Recover function.

The returned DB instance is goroutine-safe. The DB must be closed after use, by calling Close method.