Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Update announcements to clear all but the past 30 days and announce the lates version release

The RIC Message Router (RMR) is a thin library which allows applications to send messages to other applications. RMR provides insulation from the actual message transport system (e.g. Nanomsg or NNG), as well as providing endpoint selection based on message type. This page serves as an anchor point for RMR related pages.

WARNING: 15 April 2020

An potential bug has been discovered in the Linux TCP stack and has the potential to affect an xAPP which is trying to connect to another xapp.  The bug can be avoided by using ONLY ODD PORT NUMBERS   (e.g. 43085).  The bug is related to randomly selected port numbers by the connect() system call which seem to always be even values.

Announcements

The following are announcements related to RMR during the past 30 days; newest announcements first.


2020 April 272021 3 May

Version 4.0.2 was pushed.  This fixes a bug in the SI95 transport header interpretation that causes errors when communicating with xAPPs which were linked against RMR 3.6.* and earlier.    It is highly recommended that all xAPPs link against 4.0.2 as soon as possible .

2020 April 22

Version 4.0.0 was pushed.  There are NOT any changes to the API; this change removes the RMR NNG libraries (librmr_nng.*) from the packages, and adds some unit tests.

2020 April 20

Version 3.8.2 pushed.  This applies a CRITICAL FIX to the SI95 portion of the library. A bug introduced in the 3.7.2 patch was causing RMR to fail to request a dynamic update from the Route Manager.  If any 3.7 version of RMR, or 3.8.0 version, was applied it must be replaced with 3.8.2 or later to avoid route table issues.

Version 3.8.1 pushed.  This change is only to push a better user guide into the RTD site and no code changes were made.  Thus, there won't be a package pushed to package cloud.

2020 April 17

Version 3.8.0 pushed.   This change adds a "safe connect" to the SI95 code in order to avoid the potential of a connect attempt connecting back to the same process because of the Linux connect() even port bug. This change also fixes a potential core dump in the route table collection code when debugging is enabled. 

2020 April 9

Version 3.7.1  pushed.  This change removes the receive buffer maximum limit when running on top of SI95.  

2020 April 7

Version 3.7.0 pushed.  This change renames the healthcheck support application included in the RMR runtime package to rmr_probe.  The command line is the same, and for a small amount of time the old name (health_ck) will be valid.

2020 April 3

Version 3.6.5 pushed.  This corrects a potential segmentation fault when evaluating the interfaces which can be used to listen for connections.

2020 March 23

Version 3.6.2 was pushed.  This fixes a bug in the initialisation process when a message is reclaimed from the buffer pool.  The flag values are properly initialised.  This is considered an important fix and should be picked up by all applications relying on RMR. 

Current Version

7.4 has been pushed to the release area of the package cloud repository.  See the revision history on the RTD site for the changes.


Current Version

Cherry development begins with version 4.7.4 on the master branch; 4.7.4 current in the package cloud staging repo.

Cherry Release:  Version 4.4.5 (November 2020)

Bronze Release :  version tag 4.0.5 (6 June 2020)  -- Code is currently frozen; only bug fixes and documentation updates are being applied.Release B development (master branch) version tag 4.0.2 (27Apr 2020)

Release A frozen: 1.11.1 (Amber branch) 6 November 2019

...

For a detailed description of API changes, and their related commits, please consult the CHANGES file at the top level of the RMR repo:https://gerrit.o-ran-sc.org/r/admin/repos/ric-plt/lib/rmrthe RMR repo or on the RMR read the docs page.

Changes to the API will be announced via this wiki page, so it is assumed that anybody interested in being notified about API changes will place a watch on this page.

...

Support Software

When the RMR runtime package is installed, there may be one or more support binaries which are included. These are installed (by default) into /usr/local/bin. The links below describe each.

...