mirror of
https://github.com/logos-storage/nim-datastore.git
synced 2026-01-06 23:53:09 +00:00
cleanup
This commit is contained in:
parent
f318877727
commit
b27593e8cf
@ -105,7 +105,7 @@ method close*(
|
|||||||
## this can block... how to handle? maybe just leak?
|
## this can block... how to handle? maybe just leak?
|
||||||
self.tds[].tp.shutdown()
|
self.tds[].tp.shutdown()
|
||||||
|
|
||||||
proc newSharedDataStore*[T: Datastore](
|
proc newSharedDataStore*(
|
||||||
ds: Datastore,
|
ds: Datastore,
|
||||||
): Future[?!SharedDatastore] {.async.} =
|
): Future[?!SharedDatastore] {.async.} =
|
||||||
|
|
||||||
@ -120,7 +120,10 @@ proc newSharedDataStore*[T: Datastore](
|
|||||||
echo "\nnewDataStore: threadId:", getThreadId()
|
echo "\nnewDataStore: threadId:", getThreadId()
|
||||||
# GC_ref(ds)
|
# GC_ref(ds)
|
||||||
res[].value[].ds = ds
|
res[].value[].ds = ds
|
||||||
res.createThreadDatastore()
|
try:
|
||||||
|
res[].value[].tp = Taskpool.new(num_threads = 2)
|
||||||
|
except Exception as exc:
|
||||||
|
return err((ref DatastoreError)(msg: exc.msg))
|
||||||
await wait(res[].signal)
|
await wait(res[].signal)
|
||||||
finally:
|
finally:
|
||||||
echo "closing signal"
|
echo "closing signal"
|
||||||
|
|||||||
@ -128,13 +128,3 @@ proc put*(
|
|||||||
print "bval: ", bval
|
print "bval: ", bval
|
||||||
|
|
||||||
tds[].tp.spawn putTask(ret, tds[].backend, bkey, bval)
|
tds[].tp.spawn putTask(ret, tds[].backend, bkey, bval)
|
||||||
|
|
||||||
proc createThreadDatastore*(ret: ThreadDatastorePtr): Result[void, ref CatchableError] =
|
|
||||||
try:
|
|
||||||
echo "createThreadDatastore: start"
|
|
||||||
ret[].tp = Taskpool.new(num_threads = 2)
|
|
||||||
echo "createThreadDatastore: done"
|
|
||||||
|
|
||||||
except Exception as exc:
|
|
||||||
return err((ref DatastoreError)(msg: exc.msg))
|
|
||||||
|
|
||||||
|
|||||||
@ -1,13 +1,14 @@
|
|||||||
import std/options
|
import std/options
|
||||||
import std/sequtils
|
import std/sequtils
|
||||||
import std/os
|
import std/os
|
||||||
from std/algorithm import sort, reversed
|
import std/algorithm
|
||||||
|
|
||||||
import pkg/asynctest/unittest2
|
import pkg/asynctest/unittest2
|
||||||
import pkg/chronos
|
import pkg/chronos
|
||||||
import pkg/stew/results
|
import pkg/stew/results
|
||||||
import pkg/stew/byteutils
|
import pkg/stew/byteutils
|
||||||
|
|
||||||
|
import pkg/datastore/memoryds
|
||||||
import pkg/datastore/sharedds
|
import pkg/datastore/sharedds
|
||||||
|
|
||||||
import ./dscommontests
|
import ./dscommontests
|
||||||
@ -24,7 +25,8 @@ suite "Test Basic SharedDatastore":
|
|||||||
let backend = ThreadBackend(
|
let backend = ThreadBackend(
|
||||||
kind: TestBackend,
|
kind: TestBackend,
|
||||||
)
|
)
|
||||||
let res = await newSharedDataStore(backend)
|
let mem = MemoryDatastore.new()
|
||||||
|
let res = await newSharedDataStore(mem)
|
||||||
check res.isOk()
|
check res.isOk()
|
||||||
sds = res.get()
|
sds = res.get()
|
||||||
# echo "sds: ", repr sds
|
# echo "sds: ", repr sds
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user