Discover Refinitiv
MyRefinitiv Refinitiv Perspectives Careers
Created with Sketch.
All APIs Questions & Answers  Register |  Login
Ask a question
  • Questions
  • Tags
  • Badges
  • Unanswered
Search:
  • Home /
  • TREP APIs /
  • RFA /
avatar image
Question by owen.hynes · Apr 14, 2016 at 11:18 AM · consumerrsslmemoryclientrsslUninitialize

Using the RFAJ 8.0 API - is there anything specific that needs to be done to kill a connection to RSSLConnection outside of the Application Cleanup steps such as unregisterClient, destroyConsumer/Queue, cleanup?

I have a memory leak in my application due to the RSSLConnection connection retaining references to by objects even after I have destroyed the eventqueue and the consumer and released the session via the API. Due to the connection retaining references to my Client class (which implements com.reuters.rfa.common.Client). How can I kill the connection so the referenced objects can be cleaned up?

Steven McCoy

People who like this

1 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.

2 Replies

  • Sort: 
avatar image
REFINITIV
Best Answer
Answer by Sarit Chantasuban · May 30, 2016 at 04:02 AM

RFA Java 8.0.1.E1 (latest) fixes objects-retention issue found when using batch snapshot requests.

---------------------------------------
rfaj8.0.1.E1.all
---------------------------------------
RFA-304; RFA Java holds references to objects in consumer batch application space.
This has been fixed.
(CaseId: 04554581)
Comment

People who like this

0 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.

avatar image
REFINITIV
Answer by Steven McCoy · Apr 14, 2016 at 11:31 AM

RFA/Java 8.0.0.L2 (latest 8.0.1) fixes a memory leak bug whereby connections will retain references to closures when returned to the pool.

---------------------------------------
rfaj8.0.0.L2.all
---------------------------------------
rfaj3799; RFA Java holds on to references to Closure objects and thus
prevents them from being garbage collected.
This has been fixed.
(CaseId: 03836653) (RFAJAVA-435)

Also a common missed step is that after deactivating an event queue one must drain the queue of events, this is not required in RFA/C++. Example:

private void drainqueue() {
	LOG.trace ("Draining event queue.");
	int count = 0;
	try {
		while (this.event_queue.dispatch (Dispatchable.NO_WAIT) > 0) { ++count; }
		LOG.trace ("Queue contained {} events.", count);
	} catch (DeactivatedException e) {
/* ignore on empty queue */
		if (count > 0) LOG.catching (e);
	} catch (Exception e) {
		LOG.catching (e);
	}
}
Comment

People who like this

0 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 >
5 People are following this question.

Related Questions

Explain RSSL serverList parameter behavior

Explain "Channel flush failed" error

How to use single session supporting multiple users for remote authentication in SSL RFA Java Subscriber?

What does RespMsg::ClearCacheFlag actually do?

Unable to get rid of garbage

  • 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