From 6222642c1b9a935ae5937fee4b50833801a6d7e6 Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Tue, 29 Aug 2023 14:43:05 -0700 Subject: [PATCH] switch to result type --- datastore/threadproxyds.nim | 12 ++++-------- tests/datastore/testthreadproxyds.nim | 4 ++-- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/datastore/threadproxyds.nim b/datastore/threadproxyds.nim index dc44ee4..a2395da 100644 --- a/datastore/threadproxyds.nim +++ b/datastore/threadproxyds.nim @@ -37,7 +37,6 @@ method has*( has(ret, self.tds, key) await wait(ret[].signal) finally: - # echo "closing signal" ret[].signal.close() # echo "\nSharedDataStore:has:value: ", ret[].repr @@ -55,7 +54,6 @@ method delete*( delete(ret, self.tds, key) await wait(ret[].signal) finally: - # echo "closing signal" ret[].signal.close() # echo "\nSharedDataStore:put:value: ", ret[].repr @@ -105,7 +103,6 @@ method put*( finally: ret[].signal.close() - # echo "\nSharedDataStore:put:value: ", ret[].repr return success() method put*( @@ -133,17 +130,16 @@ method close*( ## this can block... how to handle? maybe just leak? self.tds[].tp.shutdown() -proc newSharedDataStore*( +proc newThreadProxyDatastore*( ds: Datastore, ): ?!ThreadProxyDatastore = + ## create a new var self = ThreadProxyDatastore() - let value = newSharedPtr(ThreadDatastore) - echo "\nnewDataStore: threadId:", getThreadId() - # GC_ref(ds) - value[].ds = ds + # GC_ref(ds) ## TODO: is this needed? try: + value[].ds = ds value[].tp = Taskpool.new(num_threads = 2) except Exception as exc: return err((ref DatastoreError)(msg: exc.msg)) diff --git a/tests/datastore/testthreadproxyds.nim b/tests/datastore/testthreadproxyds.nim index 01964e7..2b98224 100644 --- a/tests/datastore/testthreadproxyds.nim +++ b/tests/datastore/testthreadproxyds.nim @@ -27,7 +27,7 @@ suite "Test Basic ThreadProxyDatastore": setupAll: mem = MemoryDatastore.new() - sds = newSharedDataStore(mem).expect("should work") + sds = newThreadProxyDatastore(mem).expect("should work") key1 = Key.init("/a").tryGet data = "value for 1".toBytes() @@ -62,7 +62,7 @@ suite "Test Basic ThreadProxyDatastore": setupAll: memStore = MemoryDatastore.new() - ds = newSharedDataStore(memStore).expect("should work") + ds = newThreadProxyDatastore(memStore).expect("should work") teardownAll: (await memStore.close()).get()