Skip to content
Snippets Groups Projects
Commit 9a2d3975 authored by Sergey Yakubov's avatar Sergey Yakubov
Browse files

try-except block for wait_requests_finished, nogil

parent c20e160f
No related branches found
No related tags found
No related merge requests found
......@@ -53,7 +53,11 @@ while True:
except asapo_producer.AsapoProducerError:
break
producer.wait_requests_finished(timeout_s_producer*1000)
try:
producer.wait_requests_finished(timeout_s_producer*1000)
except:
print("waiting requestst finished failed")
print ("Processed "+str(n_recv)+" file(s)")
print ("Sent "+str(n_send)+" file(s)")
......@@ -86,7 +86,7 @@ cdef extern from "asapo_wrappers.h" namespace "asapo":
RequestCallback unwrap_callback_with_memory(RequestCallbackCythonMemory, void*,void*,void*)
cdef extern from "asapo_producer.h" namespace "asapo":
cdef extern from "asapo_producer.h" namespace "asapo" nogil:
cppclass Producer:
@staticmethod
unique_ptr[Producer] Create(string endpoint,uint8_t nthreads,RequestHandlerType type, SourceCredentials source,Error* error)
......
......@@ -187,7 +187,10 @@ cdef class PyProducer:
:raises: AsapoProducerError
"""
err = self.c_producer.get().WaitRequestsFinished(timeout_ms)
cdef Error err
cdef uint64_t timeout = timeout_ms
with nogil:
err = self.c_producer.get().WaitRequestsFinished(timeout)
if err:
throw_exception(err)
return
......
......@@ -55,14 +55,17 @@ producer.send_data(5, stream+"/"+"file6",b"hello",
producer.send_data(6, stream+"/"+"file7",None,
ingest_mode = asapo_producer.INGEST_MODE_TRANSFER_METADATA_ONLY, callback = callback)
producer.wait_requests_finished(25000)
n = producer.get_requests_queue_size()
if n!=0:
print("number of remaining requestst should be zero, got ",n)
try:
producer.wait_requests_finished(50000)
n = producer.get_requests_queue_size()
if n!=0:
print("number of remaining requestst should be zero, got ",n)
sys.exit(1)
except:
print("waiting requests finished failed")
sys.exit(1)
# create with error
try:
producer = asapo_producer.create_producer(endpoint,beamtime, stream, token, 0)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment