Support #781

tprecv() with TPNOBLOCK flag on empty queue sets tperrno=0

Added by Madars 10 months ago. Updated 9 months ago.

Status:ClosedStart date:05/27/2022
Priority:Normal (Code 4)Due date:
Assignee:-% Done:


Target version:-


Found during Python Binding testing:

>>> e.tprecv(cd, e.TPNOBLOCK)
N:NDRX:5:d190fd96:13447:7f5e04de4740:001:20220527:161410524576:ndrx_tpalloc:ed_buf.c:0239:ndrx_tpalloc: type=NULL, subtype=NULL len=0
N:NDRX:5:d190fd96:13447:7f5e04de4740:001:20220527:161410524635:ndrx_tprecv :sation.c:1044:ndrx_tprecv enter
N:NDRX:5:d190fd96:13447:7f5e04de4740:001:20220527:161410524659:_svq_receive:ys_svq.c:0814:receiving msg mqd=0x2860398, ptr=0x28e83a8, maxlen=65552 flags: 2048 qid: 360529
N:NDRX:5:d190fd96:13447:7f5e04de4740:001:20220527:161410524694:_svq_receive:ys_svq.c:0844:msgrcv(qid=360529) failed: No message of desired type
N:NDRX:5:d190fd96:13447:7f5e04de4740:001:20220527:161410524712:ic_q_receive:iutils.c:0562:No messages in queue
N:NDRX:5:d190fd96:13447:7f5e04de4740:001:20220527:161410524730:ic_q_receive:iutils.c:0578:ndrx_generic_q_receive: -2
N:NDRX:5:d190fd96:13447:7f5e04de4740:001:20220527:161410524751:ndrx_tprecv :sation.c:1287:ndrx_tprecv return -1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
endurox.XatmiException: 0:TPMINVAL


#1 Updated by Lauris 9 months ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

Release notes

Fixed tprecv() XATMI API call, so that if TPNOBLOCK was used, and no data was present on conversational channel, the correct error TPEBLOCK is reported.

Available from Enduro/X release 8.0.6+.

#2 Updated by Lauris 9 months ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF