RV 8.4.0 Java client using native implementation, calling TibrvMsg.dispose() may cause subsequent messages to be corrupted.

RV 8.4.0 Java client using native implementation, calling TibrvMsg.dispose() may cause subsequent messages to be corrupted.

book

Article ID: KB0089243

calendar_today

Updated On:

Products Versions
TIBCO Rendezvous -
Not Applicable -

Description

Description:
RV 8.4.0 Java client using native implementation, calling TibrvMsg.dispose() may cause subsequent messages received to be corrupted.

Symptoms:
Messages received from the subscriber will show a certain degree of corrupted data, including but not limited to:

1). replySubject could be mixed across messages.

2). Message content could be corrupted and not matching what is being sent


Cause:
Calling dispose() at the end of a message callback method is the causing the trouble.

Issue/Introduction

RV 8.4.0 Java client using native implementation, calling TibrvMsg.dispose() may cause subsequent messages to be corrupted.

Resolution

This defect has been fixed in RV 8.4.1 and RV 8.4.2.

There are generally 3 options:

1)  Avoid calling the dispose() method(). There are no functionality loss by doing so. The only down side is that the native memory footprint imposed by the message object will be retained until the corresponding Java object is recycled by the JVM garbage collector.

2). Use IMPL_JAVA implementation which prevents the dispose() call.

3) , Upgrade to the RV 8.4.1+ client library.