display = "ZRN", value=180
display = "ZRN", value=180
@Kam.Anjorin
Thank you for your participation in the forum. Are any of the replies below satisfactory in resolving your query? If yes please click the 'Accept' text next to the reply that best answers your question. This will guide all community members who have a similar question. Otherwise please post again offering further insight into your question.
Thanks,
-AHS
Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?
If so please can you click the 'Accept' text next to the appropriate reply. This will guide all community members who have a similar question.
Thanks,
AHS
Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.
Thanks,
AHS
This error indicates that the code is attempting to pack several messages into a transport buffer from rsslGetBuffer() that was not set as packable.
The ETA TCP transport provides functionality to pack multiple messages into a single transport buffer, which will then send the packed messages as a single packet on the wire when the buffer passed into rsslWrite. The maximum size allowed by the ETA API for a packable buffer is the maxMsgSize configured on the current rsslChannel. In order to use this functionality, set the packedBuffer argument to true in rsslGetBuffer.
Please see the following psudocode:
// RsslChannel chnl has already been established
RsslBuffer *buf;
RsslWriteOutArgs outArgs;
RsslWriteInArgs inArgs;
RsslError err;
<Initialize inArgs and outArgs>
// Get a packable buffer
buf = rsslGetBuffer(chnl, <Max Msg Size>, RSSL_TRUE, &err);
while(<not done with messages> && buf->length != 0)
{
<Encode message into buf>
//Set the encoded length of the buffer here
buf->len = rsslGetEncodedBufferLength(encIter);
// Call rsslPackBuffer. buf will be the new output
buf = rsslPackBuffer(chnl, buf, &err);
}
// If there's remaining usable memory in the packed buffer, set the length to 0 prior to sending it on the wire.
if(buf->length != 0)
buf->length = 0;
// Write the packed buffer to the wire
rsslWriteEx(chnl, buf, &outArgs, &inArgs, &err);