test query

This commit is contained in:
Jaremy Creechley 2023-09-26 18:27:18 -07:00
parent b746a266e7
commit 70b5956773
No known key found for this signature in database
GPG Key ID: 4E66FB67B21D3300

View File

@ -320,6 +320,9 @@ method query*(
lock = newAsyncLock() # serialize querying under threads
iter = QueryIter.new()
echo "query:first:iter:dispatch"
await nextSignal.fire()
echo "query:next:ready: "
proc next(): Future[?!QueryResponse] {.async.} =
@ -337,19 +340,16 @@ method query*(
echo "query:next:iter:finished"
return failure (ref QueryEndedError)(msg: "Calling next on a finished query!")
if not ctx[].running:
echo "query:next:iter:finished "
iter.finished = true
return
echo "query:next:acquire:lock"
await lock.acquire()
echo "query:next:iter:dispatch"
await nextSignal.fire()
echo "query:next:iter:dispatch:wait"
await wait(ctx[].signal)
if not ctx[].running:
echo "query:next:iter:finished "
iter.finished = true
# return
echo "query:next:iter:res: ", ctx[].res, "\n"
if ctx[].res.isErr():
@ -360,6 +360,9 @@ method query*(
let data = qres.data.toSeq()
return (?!QueryResponse).ok((key: key, data: data))
echo "query:next:iter:dispatch"
await nextSignal.fire()
iter.next = next
return success iter