diff options
author | 2022-11-06 12:30:08 +0000 | |
---|---|---|
committer | 2022-11-06 13:30:08 +0100 | |
commit | 05a8baa53ae7983b8fa2d79589ff0cab7ab1b22b (patch) | |
tree | 041f88f0f035df2c3793565d44700e0e5fe09c2d /vendor/codeberg.org/gruf/go-store | |
parent | [docs] add note about Alpha status right at the top (#971) (diff) | |
download | gotosocial-05a8baa53ae7983b8fa2d79589ff0cab7ab1b22b.tar.xz |
[bugfix] KVStore doesn't like lost+found directory (#972)
* bump go-store version to v2.0.5, init kv.KVStore without initial clean (as we are using for storage, not as a key-value store)
Signed-off-by: kim <grufwub@gmail.com>
* remove newline
Signed-off-by: kim <grufwub@gmail.com>
Signed-off-by: kim <grufwub@gmail.com>
Diffstat (limited to 'vendor/codeberg.org/gruf/go-store')
-rw-r--r-- | vendor/codeberg.org/gruf/go-store/v2/kv/store.go | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/vendor/codeberg.org/gruf/go-store/v2/kv/store.go b/vendor/codeberg.org/gruf/go-store/v2/kv/store.go index 86ba73f67..5ea795e7c 100644 --- a/vendor/codeberg.org/gruf/go-store/v2/kv/store.go +++ b/vendor/codeberg.org/gruf/go-store/v2/kv/store.go @@ -38,10 +38,7 @@ func OpenBlock(path string, cfg *storage.BlockConfig) (*KVStore, error) { } func OpenMemory(overwrites bool) *KVStore { - return &KVStore{ - mu: mutexes.NewMap(-1, -1), - st: storage.OpenMemory(100, overwrites), - } + return New(storage.OpenMemory(100, overwrites)) } func OpenS3(endpoint string, bucket string, cfg *storage.S3Config) (*KVStore, error) { @@ -55,6 +52,7 @@ func OpenS3(endpoint string, bucket string, cfg *storage.S3Config) (*KVStore, er return OpenStorage(storage) } +// OpenStorage will return a new KVStore instance based on Storage, performing an initial storage.Clean(). func OpenStorage(storage storage.Storage) (*KVStore, error) { // Perform initial storage clean err := storage.Clean(context.Background()) @@ -63,10 +61,18 @@ func OpenStorage(storage storage.Storage) (*KVStore, error) { } // Return new KVStore + return New(storage), nil +} + +// New will simply return a new KVStore instance based on Storage. +func New(storage storage.Storage) *KVStore { + if storage == nil { + panic("nil storage") + } return &KVStore{ mu: mutexes.NewMap(-1, -1), st: storage, - }, nil + } } // RLock acquires a read-lock on supplied key, returning unlock function. |