question

Upvotes
Accepted
5 0 0 2

Example provider application with EMA C++ is crashing at exit

RTSDK-2.0.6.L1.linux.rrg

RTSDK-2.0.6.L1.linux.rrg/Cpp-C/Ema/Executables/CENTOS7_64_GCC482/Optimized/IProv280

Provider crashes at end with stack

(gdb) bt

#0 0x00007f5ceaf07387 in __GI_raise (sig=sig@entry=6)

at ../nptl/sysdeps/unix/sysv/linux/raise.c:55

#1 0x00007f5ceaf08a78 in __GI_abort () at abort.c:90

#2 0x00007f5ceaf54845 in malloc_printerr (ar_ptr=<optimized out>,

ptr=<optimized out>, str=<optimized out>, action=<optimized out>)

at malloc.c:4971

#3 free_check (mem=<optimized out>, caller=<optimized out>) at hooks.c:300

#4 0x0000000000560846 in refinitiv::ema::access::Pool<refinitiv::ema::access::EncodeIterator, refinitiv::ema::access::EncodeIterator>::returnItem(refinitiv::ema::access::EncodeIterator*) ()

#5 0x0000000000560743 in refinitiv::ema::access::Encoder::releaseEncIterator()

()

#6 0x00000000004d3269 in refinitiv::ema::access::FieldListEncoder::clear() ()

#7 0x00000000004d09bc in refinitiv::ema::access::EncoderPool<refinitiv::ema::access::FieldListEncoder>::returnItem(refinitiv::ema::access::FieldListEncoder*)

()

#8 0x00000000004d0317 in refinitiv::ema::access::FieldList::~FieldList() ()

#9 0x00007f5ceaf0ace9 in __run_exit_handlers (status=-1,

listp=0x7f5ceb2986c8 <__exit_funcs>,

run_list_atexit=run_list_atexit@entry=true) at exit.c:77

#10 0x00007f5ceaf0ad37 in __GI_exit (status=<optimized out>) at exit.c:99

#11 0x00000000005d2865 in refinitiv::ema::access::OmmBaseImplMap<refinitiv::ema::access::OmmServerBaseImpl>::monitorThread(void*) ()

#12 0x00007f5cebac6ea5 in start_thread (arg=0x7f5ceaed0700)

at pthread_create.c:307

#13 0x00007f5ceafcfb0d in clone ()

at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111


To reproduce

-Start provider with MALLOC_CHECK_=2

- Start consumer e.g. RTSDK-2.0.6.L1.linux.rrg/Cpp-C/Ema/Executables/CENTOS7_64_GCC482/Optimized/Cons331

- After consumer receives a message, kill consumer

- Kill provider with control-C, the provider crashes with above stack


ema-api
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hello @makarand.vaidya

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

1 Answer

· Write an Answer
Upvotes
Accepted
32.2k 40 11 20

Hello @makarand.vaidya ,

My understanding is that the crash happens consistently on your side, and is reproducible repeatedly.

I was not able to directly reproduce the crush on my side: i have followed the instructions given, and on my side, IProv280 has exited cleanly.

I have also tried the same test on windows RTSDK, and also the provider has exited cleanly.

In this situation, the best approach, in my understanding, is to open a Premium Support case, and to investigate the issue in detail, by trying to match the environment that you run and try to reproduce on such- mine is on docker, and the versions of installed libraries, likely differ from yours.

My record indicates that you are a named premium support user for your organization, if this is the case, you can open a premium support case directly, from Refinitiv Real Time API documentation area on developers portal.


icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.