Author Archives: Eike Römer

RXF_Rpy_CPP_V7.06 to RXF_Rpy_CPP_V7.10 Timeout Handling Unprotected when Using Critical Sections instead of Mutexes

The property RXF_Rpy_CPP::Configuration::WST_TMR_PROTECTION contains a typo that will lead to a generated define that is not matching the #ifdef tests for timeout protection.
It is:
WST_TMR_USE_CRITICAL_SECION
It should be:
WST_TMR_USE_CRITICAL_SECTION

This is only a problem, when RXF_Rpy_CPP::Configuration::WST_TMR_PROTECTION is set to WST_TMR_USE_CRITICAL_SECION. It is not a problem, it is is set to WST_TMR_USE_MUTEX.

In the Cert framework (RXF_Rpy_CPP_OORTX_Cert), in C frameworks and in V6 releases this problem does not exist.

Workaround

The problem can be fixed by editing the file “<RXF_Rpy_CPP folder>\RXF\Config\Profiles\RXF_Rpy_CPP_Profile.prp”. In that file search for “WST_TMR_USE_CRITICAL_SECION” and replace the one occurrence by “WST_TMR_USE_CRITICAL_SECTION”.

An official release V7.11 that will fix this problem is planned and will be published soon.

Upgrading to IBM Rational Rhapsody 8.3 and Compatibility with the RXF

On December 4, 2017 IBM released Rhapsody 8.3. This release contains a lot of fixes and some changes. It is good to take a look at these changes to see what impact they have on your development environment.

iFix 2 Absolutely Required

Major changes in Rhapsody’s repository data, see next section, unfortunately introduced some problems that will be fixed again with the iFix 2 for Rhapsody 8.3 (32-bit).

Please take care when upgrading to Rhapsody 8.3 to directly also install iFix2.

Continue reading

Rhapsody 8.3 released

IBM released a new version of Rhapsody: 8.3

It is available for support customers of Willert Software Tools in the download area, but all guests can read the Release notes there.

Willert Software Tools will, in the next days, check if this release can be used by RXF customers.

One of the changes is the change from the old rhapsody file format to the new XML format.

Rhapsody 8.2.1 released

IBM released a new version of Rhapsody: 8.2.1.

It is available for support customers of Willert Software Tools in the download area, but all guests can read the Release notes there.

Willert Software Tools will, in the next days, check if this release can be used by RXF customers.

Rhapsody iFix2 for 8.2

Since a few versions, IBM creates Fixes for actual versions of Rhapsody.

Customers with a valid support contract can download them from this site.

There are several fixes, for 8.2, 8.1.5 and 8.1.4

Fixes are only available on this site for the 32-bit version

Fixes and downloads for 64-bits or for Linux are available on request (support@willert.de)

IBM Rational Rhapsody 8.2 Build 9794446 released

A new Rhapsody version was released by IBM last week. We have tested this version with our RXF Frameworks and we have not found a show stopping problem using it.
That means that RXF versions that are compatible with Rhapsody 8.1.5 are also compatible with Rhapsody 8.2.
For earlier than 8.1.5 versions of the RXF please read the 8.1.5 support announcement.

Please note:

  • In our test environment we had to start Rhapsody as administrator once otherwise the deployer threw an error message.
  • Although we test as thorough as possible, there is always a minor chance that we have overlooked a change that is important to certain customers. Please test yourself before switching to a new version.

Remember to re-install the RXF for the new Rhapsody version.

Release Notes:

Continue reading

RXF Timer possible problem

The current version of the RXF has a potential timer problem.

On systems that are running on a high load it can occur that longer timeouts are processed too late.

Cause:
The timerouts are stored in a sorted list, first expiring timeout is the first list element. When a timer tick arrives only the first elements timeout value will be decreased.
On full load systems, the timeouts are not always processed immediately, so the system tick count could be larger then 1. When that happens, and the next expiring timeout has a tick value less then the system tick value, ticks would get lost.
This effect is hardly noticeable on systems with only short timeouts especially since the system is under full load anyway.
However when longer timeouts are used they will expire much later due to the stacking of this effect.. (50% longer)
The new version of the framework has corrected this error.