Discover Refinitiv
MyRefinitiv Refinitiv Perspectives Careers
Created with Sketch.
All APIs Questions & Answers  Register |  Login
Ask a question
  • Questions
  • Tags
  • Badges
  • Unanswered
Search:
  • Home /
  • Elektron /
  • ETA /
avatar image
Question by Akechi Sato · Jun 27, 2017 at 12:32 AM · c++

ETA application crashed in ripc10IntFlushSess

The application uses ETA to send over 10,000 messages per second. Recently, the application crashed with a segmentation fault in ripc10IntFlushSess. Two threads crashed in the same function, a few microseconds apart.

Program terminated with signal 11
#0 0x00000000004282a0 in ripc10IntFlushSess () 
Missing separate debuginfos, use: debuginfo-install
glibc-2.12-1.80.el6.x86_64 libgcc-4.4.6-4.el6.x86_64 libstdc++-4.4.6-4.el6.x86_64
(gdb) bt 
#0 0x00000000004282a0 in ripc10IntFlushSess () 
#1 0x0000000000428cb8 in ripc10FlushSess () 
#2 0x0000000000420c60 in rsslSocketFlush () 
#3 0x000000000041362d in rsslFlush ()

Could you please help?

People who like this

0 Show 0
Comment
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

1 Reply

  • Sort: 
avatar image
REFINITIV
Best Answer
Answer by jirapongse.phuriphanvichai · Jun 27, 2017 at 02:35 AM

From the problem description, the application uses ETA with multiple threads and two threads can call rsslFlush function on the same channel concurrently. In this scenario, the application must use RSSL_LOCK_GLOBAL_AND_CHANNEL instead of RSSL_LOCK_NONE when calling rsslInitialize or rsslInitializeEx function. This setting allows for accessing the same channel from multiple threads.

RsslInitializeExOpts initOpts = RSSL_INIT_INITIALIZE_EX_OPTS;
RsslError error;

initOpts.rsslLocking = RSSL_LOCK_GLOBAL_AND_CHANNEL;
if (rsslInitializeEx(∈itOpts, &error) != RSSL_RET_SUCCESS)
{
…
} 

Note that writing messages from multiple threads can result in ordering issues and it is not recommended to write related messages across different threads.

Comment
brian.sandri

People who like this

1 Show 0 · Share
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

Watch this question

Add to watch list
Add to your watch list to receive emailed updates for this question. Too many emails? Change your settings >
6 People are following this question.

Related Questions

What is the recommended way to subscribe to all RICs on a particular exchange?

Elektron SDK 1.2.0 rsslNumericStringToReal() regression

ESDK ETA RCC - Error:1002 ipcRead() failure. Connection reset by peer

No data flow after resume

  • Feedback
  • Copyright
  • Cookie Policy
  • Privacy Statement
  • Terms of Use
  • Careers
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Alpha
  • App Studio
  • Block Chain
  • Bot Platform
  • Calais
  • Connected Risk APIs
  • DSS
  • Data Fusion
  • Data Model Discovery
  • Datastream
  • Eikon COM
  • Eikon Data APIs
  • Elektron
    • EMA
    • ETA
    • WebSocket API
  • Legal One
  • Messenger Bot
  • Messenger Side by Side
  • ONESOURCE
    • Indirect Tax
  • Open PermID
    • Entity Search
  • Org ID
  • PAM
    • PAM - Logging
  • ProView
  • ProView Internal
  • Product Insight
  • Project Tracking
  • Refinitiv Data Platform
    • Refinitiv Data Platform Libraries
  • Rose's Space
  • Screening
    • Qual-ID API
    • Screening Deployed
    • Screening Online
    • World-Check One
    • World-Check One Zero Footprint
  • Side by Side Integration API
  • TR Knowledge Graph
  • TREP APIs
    • CAT
    • DACS Station
    • Open DACS
    • RFA
    • UPA
  • TREP Infrastructure
  • TRIT
  • TRKD
  • TRTH
  • Thomson One Smart
  • Transactions
    • REDI API
  • Velocity Analytics
  • Wealth Management Web Services
  • World-Check Data File
  • Explore
  • Tags
  • Questions
  • Badges