Support #781

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

Added by Madars almost 2 years ago. Updated almost 2 years ago.

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

100%

Category:-
Target version:-

Description

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

History

#1 Updated by Lauris almost 2 years 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 almost 2 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF