What error can occur if a thread stack_size is not large enough?
If you create a large number of instances or entities and there is insufficient thread stack space, you can get the following error:
REDAFastBufferPool_getBuffer:!precondition: pool==((void *)0) REDASkiplistNode_new:!create node REDASkiplist_assertNodeEA:!create node COMMENDSrReaderService_assertBatchInfo:!get batch info buffer COMMENDSrReaderService_onSubmessage:!assert batch info REDASkiplist_gotoNextNode:!precondition: list==((void *)0) || node==((void *)0)|| *node==((void *)0) REDASkiplist_gotoNextNode:!precondition: list==((void *)0) || node==((void *)0)|| *node==((void *)0)
To resolve this, you can increase the stack size of the event thread and the reciever pool threads by setting the following QoS:
<participant_qos> <event> <thread> <stack_size>####</stack_size> </thread> </event> <receiver_pool> <thread> <stack_size>####</stack_size> </thread> </receiver_pool> </participant_qos>