Tommy Carpenter [Fri, 6 Dec 2019 14:28:10 +0000 (09:28 -0500)]
Release 2.2.0
Change-Id: Iad4bdc3a5126ed430700636d0ef4aabcb4b8b1ac
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Thu, 5 Dec 2019 15:27:21 +0000 (10:27 -0500)]
Add ability to set xaction deterministically, bug fixes
Change-Id: I0a3aa99f1a793b7f16fe0a5314a2529715690c01
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Wed, 4 Dec 2019 20:01:01 +0000 (15:01 -0500)]
Release 2.1.0
Change-Id: I769773e40c16000914e2e8111821d7570b57bcd9
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Wed, 4 Dec 2019 18:26:58 +0000 (13:26 -0500)]
Add new func, update rts
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Change-Id: I2e0830eefe425d268045af6c2e5d1a1231fe8d56
Tommy Carpenter [Wed, 4 Dec 2019 18:28:44 +0000 (13:28 -0500)]
Release 2.0.0
Change-Id: Ibaac2a1cfa6b51a61d64eedbc5b595e9fa0dbd1e
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Tue, 3 Dec 2019 19:26:03 +0000 (14:26 -0500)]
Fix whitespace issues in readme
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ibd1f37e855e65506c342e356bc9dedbca56567c0
Tommy Carpenter [Mon, 2 Dec 2019 20:04:45 +0000 (15:04 -0500)]
Version bump, release ready when dev-b is merged back.
Change-Id: I43be2ce9535d454e95c9c9a042bfde0a35031eb6
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Wed, 13 Nov 2019 15:02:37 +0000 (10:02 -0500)]
Add new message types for A1
A small vetting script was also added to help verify that
message types and constant names are not duplicated in the
header file.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ia7577842d94afd413665e84f248f860afa199045
Tommy Carpenter [Mon, 11 Nov 2019 16:06:49 +0000 (16:06 +0000)]
Add subscription id setting/testing
Issue-ID: RICPLT-2630
Change-Id: Ia89ba3af2647b0e41538112cda7715aa4be77a7b
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Fri, 1 Nov 2019 13:24:08 +0000 (09:24 -0400)]
Prevent message truncation by populate function
An attempt to write a payload to a received message in prep
for returning the response to sender could result in the
response message being truncated if it is longer than the
payload in the received message. The populate and set length
function was modified to ensure that the target message has
a payload length which is not less than the message being
added; if it does the message payload is reallocated through
RMR.
This change requires RMR version 1.10.2 or later.
CP: dev-b
Cherry-Id: I8fa26eaace814344481c2df715c7c2486a38f6df duplicated CID from an abandoned change
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Iaf032cb0b5feb14c714077430e1962107eae8a42
E. Scott Daniels [Thu, 7 Nov 2019 13:41:07 +0000 (08:41 -0500)]
Add mtypes for multiple e2-term instances
New message type constants added to support efforts for multiple
active instances of e2-term.
CP: dev-b
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: If4b3997e0b4c2b8fe2f66cd48d4ed29fc9caa487
Houa Yang [Tue, 3 Dec 2019 21:18:14 +0000 (15:18 -0600)]
Add packagecloud release file
Add packagecloud release file for rmr packages, which trigger
packagecloud verify and merge jobs. Verify checks to see if the
package is in staging repository and merge promotes packages from
staging into release repository.
Issue-Id: RELENG-2130, IT-18339
Signed-off-by: Houa Yang <hyang@contractor.linuxfoundation.org>
Change-Id: I020a84afaa63f3e00d7e1f52d5d69c5e8ae9e612
E. Scott Daniels [Fri, 22 Nov 2019 19:25:40 +0000 (14:25 -0500)]
Bump version to force a package build for release
Bloody release process depends on logs of past jobs which
are not available. This is forcing another, unchanged,
package to be pushed so that a ticket can be opened with a
link to the job output :(
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I6007fb1e347ef083cfebb89dab46cd3525fe15e7
E. Scott Daniels [Thu, 14 Nov 2019 21:03:51 +0000 (16:03 -0500)]
Correct bug in payload reallocation function
When using the rmr_realloc_payload() function with the copy
flag set, it was possible to copy a short length of data,
or none at all. This change corrects the miscomputed length
to copy.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I01a98fa66ab69d5f11a792463bc04b73209f098b
Aric Gardner [Fri, 8 Nov 2019 15:59:41 +0000 (15:59 +0000)]
Automation adds INFO.yaml
Change-Id: If07da6c4d13cfbc4d2382613e1aa644fdaa89fd0
Signed-off-by: Aric Gardner <agardner@linuxfoundation.org>
E. Scott Daniels [Fri, 8 Nov 2019 13:30:44 +0000 (08:30 -0500)]
Fix table of contents in the RTD generated stuff
The table of contents has been shortened to list only
document names and not a hammering of section titles.
The release notes is the only exception, and they have
been broken out into a second list.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I04fa2af21b78bf4eb28f920c29bb5b1bd8a74d35
E. Scott Daniels [Thu, 7 Nov 2019 20:35:17 +0000 (15:35 -0500)]
Add root level docs control files
Several control files must exist at the repo root, not in
docs, in order to vet and push the documentation out to some
remote site. This changes adds those files, and fixes the
formatting issues that RST vetting is complaining about.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ibeda532f0524d5f5d4d138ece4e9265429fa322b
E. Scott Daniels [Wed, 6 Nov 2019 20:12:38 +0000 (15:12 -0500)]
Documentation changes needed to support RTD
Changes which are necessary to support a docs directory that
is scraped for "read the docs." Changes include:
Tweaks to manual pages to allow them to be combined into a
large "user's guide" (removed the final quit command).
Addition of an rtd subidrectory under source and the needed
.xfm source to generate the various .rst files in the top
level docs (plural).
Moved the top level readme to the main source directory as
it was out of place at the top; created a new top level README.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I708a750e3c58df4d0446eb3a5706c10bf65bed1d
E. Scott Daniels [Mon, 4 Nov 2019 16:00:49 +0000 (11:00 -0500)]
Minor version bump to move forward from trial ver
All changes required to fix bugs during the fall 2019
trial of RIC software will be applied to the previous
version number with only patch level version number changes.
This change advances the minor version number so as to
avoid any artifact naming conflict as the names don't
allow for disambiguation based on branch and/or release.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I8112c215e7508c5500bbb0b255ee141b354ed1d4
E. Scott Daniels [Thu, 31 Oct 2019 13:20:33 +0000 (09:20 -0400)]
Correct inability to extend payload for rts msg
This change allows the application to increase the payload size
of an existing message buffer. This is needed when and application
must use the return to sender (rts) function to send a payload which
is larger than the payload in the received message.
Changes include a new RMR function: rmr_realloc_payload() and
changes to the python wrapper which will resize the payload if
the python application attempts to populate a message buffer which
does not have sufficent size.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ia55c0ff1d5ab3ce73292c00264df7bc16e229d3a
Tommy Carpenter [Thu, 24 Oct 2019 18:14:04 +0000 (14:14 -0400)]
Release 1.0.0:
* It's been past due to bump this to 1.0.0 since people depend on it!
* Add the ability to set sbuf attributes in the same call that it is allocated
* (breaking) removes bytes2meid
* (breaking) rmr_set_meid now infers length
* (breaking) rmr_get_meid now returns bytes, to be symmetric with set_meid
Change-Id: I8519293af6dd30be56c0a7956f31da105c78085d
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Wed, 23 Oct 2019 11:58:43 +0000 (07:58 -0400)]
Raise an exception on bad buffer allocations
Change-Id: Iddf9d17b9ce2b2b4f6b3fa52d0cfe617dd3a8c13
Signed-off-by: Tommy Carpenter <tc677g@att.com>
Tommy Carpenter [Wed, 23 Oct 2019 00:06:16 +0000 (00:06 +0000)]
Merge "Correct bug in timeout receive"
E. Scott Daniels [Tue, 22 Oct 2019 20:23:36 +0000 (16:23 -0400)]
Correct bug in timeout receive
It was possible for the timeout receive function to return a
nil message buffer pointer, even if the calling function passed
a pointer in for reuse. The exposure was limited only to when
the epoll environment could not be initialised which we believe
has never been observed.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I259a5e5a0a18e53ffb03cc4c47d171e77e998835
Tommy Carpenter [Tue, 22 Oct 2019 13:09:54 +0000 (09:09 -0400)]
Release 0.13.4
Change-Id: I2cc397ca9b55b094958dc39c42cab002e2b646de
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Mon, 21 Oct 2019 19:58:22 +0000 (15:58 -0400)]
Correct cause of NPE in python wrapper
The message summary funciton was attempting to reference
a payload when RMR left it as a null pointer.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Id1e6da44c9f79d8f69f5266b9bed1f25dd8af0d9
Lott, Christopher (cl778h) [Wed, 16 Oct 2019 12:45:26 +0000 (08:45 -0400)]
Repeat the release process for 0.13.3
Apologies for cluttering up the git history.
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ie50047e9c72cc64537b5aeadee2c5d4094e35cb2
Lott, Christopher (cl778h) [Mon, 23 Sep 2019 17:36:23 +0000 (13:36 -0400)]
Release version 0.13.3 of rmr-python
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ide23b0d25ea13ac46e36829262a5e4691ff01706
Tommy Carpenter [Thu, 10 Oct 2019 18:45:41 +0000 (18:45 +0000)]
Merge "Correct summary bug in python wrapper"
E. Scott Daniels [Thu, 10 Oct 2019 17:13:27 +0000 (13:13 -0400)]
Correct summary bug in python wrapper
The summary funciton in the python wrapper could have returned
a value which was not a dict type.
Added unit test to validate the receive all funciton in helpers.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ibed078b2a171fd3f8bd8bec51d4724e735337282
Tommy Carpenter [Mon, 7 Oct 2019 17:20:45 +0000 (17:20 +0000)]
Merge "Add content type for long description for twine"
Matti Hiltunen [Mon, 7 Oct 2019 13:35:22 +0000 (13:35 +0000)]
Merge "Add ability to track send counts for an endpoint"
E. Scott Daniels [Wed, 2 Oct 2019 14:21:24 +0000 (10:21 -0400)]
Add ability to track send counts for an endpoint
Send counts, success, failure and transient failure, are being
collected for each endpoint. The route table collector thread
will write counts to standard error on a periodic basis.
Enabled forced minimum retry.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I3c315d86e6db79cb1404788ef954a0a664084631
Fix context used for RTC epoll
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie4883e98237eb87b53b24f68bd434edcf533c92f
Fix bug when table received from RTG
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I66dd44ab7cde715d6daf144253ff5a2bd5861ae3
After stress testing and tweaks
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I0e814bf25844c19ab9f9f6c38eca50a1a66db309
Update unit tests and resulting fixes
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ifd780cfaaf924e202407f822551ca3e61c84c63d
Set minimum retry
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I17f1c096106c96d31b919bef6af759b3f4ec72c3
Lott, Christopher (cl778h) [Thu, 3 Oct 2019 15:39:33 +0000 (11:39 -0400)]
Add content type for long description for twine
Extend setup.py with the following to silence twine warning:
long_description_content_type="text/x-rst",
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I831e38f56a42d9ff46da9b1b2aa47eee26e4ecd2
Tommy Carpenter [Wed, 2 Oct 2019 14:52:14 +0000 (10:52 -0400)]
Fix a constant name
Change-Id: I0f8f53b2f8debd68ae74acb732cfe577aa725235
Signed-off-by: Tommy Carpenter <tc677g@att.com>
E. Scott Daniels [Wed, 2 Oct 2019 12:28:58 +0000 (08:28 -0400)]
Correct unit test bug in rmr-python
With RMR 1.8.x connections are forced to be asynch by default to
prevent kubernetes blocking the attempt for minutes. However, the
asynch nature of connections makes unit tests concerned with the
ability to send and receive messages non-deterministic as some
connections are established before the first message is sent, and
others are not.
This change ensures that unit tests establish connections in a
synchronous manner which ensures that the first send will not be
rejected by NNG due to a pending connection.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic72c48480d68e0aa8ba1bc0110b6222c3707ceaa
E. Scott Daniels [Mon, 30 Sep 2019 17:05:12 +0000 (13:05 -0400)]
Add ability to set debug via CMake (1.9.1)
This change allows the DEBUG flag to be supplied on the CMake command
line, and adds instructions on how to do so in BUILD.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie5c6185a3016778c7e9c0d51c074c7592c114765
Lott, Christopher (cl778h) [Mon, 30 Sep 2019 14:30:09 +0000 (10:30 -0400)]
Add YAML file with RMR version dependency for CI
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Iad96b8b42bc7e25be86e9bfc8c61f2069e4c3e5b
E. Scott Daniels [Fri, 27 Sep 2019 16:45:31 +0000 (12:45 -0400)]
Add helpers module to python wrapper
The helpers module in the python bindings allows for
extensions and convenience functions. Initially this
contains a "receive all" function that collects all
queued messages and returns an array of message summaries
to the caller.
This change also modifies the expected constants test
such that it includes a check for the MTCALL flag, and
does not fail if RMR produces more constants than
expected and/or needed.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I862edd045c30bc4c81e13664acea6b91c229fb58
E. Scott Daniels [Wed, 25 Sep 2019 17:02:30 +0000 (13:02 -0400)]
Point external nng reference for reconnect fix
Begin using NNG commit
e618abf8f3db2a94269a79c8901a51148d48fcc2
in order to pick up the fix for NNG bug:
#970 TCP connections through docker-proxy do not reconnect
Change-Id: I367ea489ff86519c17a357ff9415a873e14e1f1e
Changes to incorporate new NNG conn shut error
NNG added a connection shut error when the reconnection through
proxy bug was fixed. This change catches the new state and
sets the status in the message accordingly.
Small tweak to application tests to prvent timing issues
when running in jenkins verification environment.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Idaf98feb6c7b5724f1cceab8ba051bb5fccd7a7e
E. Scott Daniels [Wed, 25 Sep 2019 15:06:07 +0000 (11:06 -0400)]
Correct bug in mt call mode receive with timeout
The rmr_torcv_msg() function was improperly interpreting
the timeout setting with a value of 0 was given. The
expected behaviour is to return immediately if no messages
are waiting, but blocking was happening when used in
conjunction with the MT-CALL mode.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Icbbd5705e1d631f3c78dc0c27a392f681dad8737
E. Scott Daniels [Thu, 19 Sep 2019 15:09:40 +0000 (11:09 -0400)]
Add missing constant for wrappers
The RMRFL_MTCALL constant (rmr_init flag) was not being set in
the list of constants made avalable for wrapper scripts.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I6d5329677bd0492711f368e0c9d2f38ccc418e44
E. Scott Daniels [Thu, 19 Sep 2019 12:40:39 +0000 (08:40 -0400)]
Add new message types
Specifically:
RAN_CONNECTED
RAN_RESTARTED
RAN_RECONFIGURED
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I77cc3cf0a33161ee6020537653e837df7bd9b1b1
E. Scott Daniels [Tue, 17 Sep 2019 17:58:33 +0000 (13:58 -0400)]
Change connection mode to asynchronous
The default mode for NNG is to make TCP connections in
a synchronous or blocking manner (opposite of Nanomsg).
This change causes RMR to invoke the NNG connection function
(dialer) with the non-blocking flag set. This will likely
result in soft failures (retries) on message send attempts
until the connection is completed.
The original blocking mode can be enabled by setting the
RMR_ASYNC_CONN environment variable to 0 which will turn
this off and cause connections to block. Absense of the
variable, or setting it to 1, causes asynch mode to be on.
This addresses the issue described in RICPLT-2215.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4f544d772227b784efd1f7146a18921b91ae7f8e
E. Scott Daniels [Tue, 3 Sep 2019 14:52:41 +0000 (10:52 -0400)]
The change to fix a bug2
Fix return to sender retry bug; add env rts id
change 1: fix rts retry bug
The source IP address was not being restored properly after
a return to sender failure and subsequent retries were being
"reflected" rather than being sent to the message source.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I065e4b6b17896ee0de87e62916f72d2fc3067940
Support env var to define return to sender name
The host name in all environments cannot always be trusted to
be used as the message source from a "return to sender"
point of view. This change allows the RMR_SRC_ID environment
variable to supply the "hostname" that is placed in a message
as the source and thus used when an application needs to
respond to the sender.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie55c3147d6fc423c71315a43d23c88abc7e3c8d2
Tweak unit tests for better coverage
A warning was added if the multi-threaded receive process
drops messages. This tweak ensures it it tested during
unit test.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I380d58177cbc73eb1a10bbc52286922db7ead0b7
Bump version in CMake
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2d4b19a5cfd1e2c9ecd196b0af2532788414e565
E. Scott Daniels [Fri, 30 Aug 2019 16:58:54 +0000 (12:58 -0400)]
Remove nanomsg support from app test scripts
Nanomsg is no longer supported and this change drops the
attempt to build and test on top of the nanomsg library.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I3e167e28779e27115f2ccd732081ee69771f7f62
E. Scott Daniels [Tue, 27 Aug 2019 14:17:21 +0000 (10:17 -0400)]
Address potential error state after good send
This change addresses the potential to "hide" the good
status of a send in the case where there are multiple
round-robin groups for a message type. The send algorithm
was modified to eliminate the potential edge case and
to report a successful result if the message was accepted
for delivery to at least one group.
Two issues identified by valgrind (use of a potentially
uninitialised variable in a jump) were also corrected.
Intermediate commits:
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add error tag to msg
Missing ERR on failure message.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Prevent NPE in symtab
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Adjust unit tests, fix valgrind inddicated issues
Unit tests were added to verify the new get rte function.
Valgrind indicated several places where a conditional was
using a potentially uninitialised variable; these were fixed.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I7c0a49713ab3d6fbb8f66e3d286049762433dc58
E. Scott Daniels [Mon, 26 Aug 2019 14:50:52 +0000 (10:50 -0400)]
Add new message types
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4cafc3c0c84fdc857226cf7da3dda07bb560a3e7
Tommy Carpenter [Fri, 23 Aug 2019 18:24:40 +0000 (14:24 -0400)]
Complete rmr test coverage, restructure get_meid to be correct.
Change-Id: I5d327d58f3059189d357e5c890c016ec3279811b
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
Tommy Carpenter [Thu, 22 Aug 2019 13:34:57 +0000 (09:34 -0400)]
Greatly improve test coverage
Change-Id: Iaddc5fb3a365b34b91c3ae15649b4bb43f7f69a7
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
Lott, Christopher (cl778h) [Tue, 20 Aug 2019 18:35:35 +0000 (14:35 -0400)]
Correct function name to repair infinite recursion
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: Ic92b2943ba953d2d624b42485f55ba3e41aadb51
Matti Hiltunen [Fri, 16 Aug 2019 14:14:28 +0000 (14:14 +0000)]
Merge "Added new message type constants"
E. Scott Daniels [Fri, 16 Aug 2019 12:30:20 +0000 (08:30 -0400)]
Added new message type constants
New message type constants were aded, and the constants were
organised in numerical order for easier visual inspection for
duplications.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: If2c50b5ea51254d418020c5a12aa47404083a54f
Tommy Carpenter [Wed, 14 Aug 2019 15:03:25 +0000 (11:03 -0400)]
Finish sphinx documentation
Issue-ID: RICPLT-1611
Change-Id: I842d5e34f1dbf662bdacc21ff65d06afa793632c
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
Tommy Carpenter [Tue, 13 Aug 2019 20:02:42 +0000 (16:02 -0400)]
Add sphinx documentation generation
This is part 1 of 2 of a change. Part 1 adds a generation process.
Part 2 will make the docstrings more complaint so the generated docs
look nice.
Issue-ID: RICPLT-1611
Change-Id: Ie065affe5a4e2d44182e536f71287b666263de0d
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
E. Scott Daniels [Tue, 13 Aug 2019 15:35:04 +0000 (11:35 -0400)]
Add rmr_get_xact function
The rmr_get_xact function can be used to extract the transaction
information from a message. This is a convenience function.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I303478df3e9558740b2c193c99416c2dfa9b9475
Tommy Carpenter [Tue, 13 Aug 2019 14:53:29 +0000 (10:53 -0400)]
Make the PYPI page for rmr look nicer.
Change-Id: I6d2c42e7e348e25016cb706267b7065446ae3886
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
E. Scott Daniels [Fri, 9 Aug 2019 19:37:48 +0000 (15:37 -0400)]
Add example health check example programmes
The example programs health check, and msg echo illustrate
how a simple RMR based health check application might be
implemented.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4962db7f65c650c00b2a74e1e3c5e71a27cdedfc
E. Scott Daniels [Tue, 6 Aug 2019 20:29:00 +0000 (16:29 -0400)]
Add user manual source
Template (.im) changes to support the user manual and
the user manual source (new). Readme files were added
to describe current, and future, directory organisation
of the doc portion of the repo.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5d7e7b59a73e9c06dc139f419086f1b2f6b45bc2
Add user manual source
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2c072128ad5ceede9d0329aa4a00b4d60ca5d0eb
Add CMake changes for the user manual
Just a version update; user manual not automatically generated
during build.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I33ca9dc275e66f5593e84a452d07f3cea50a8543
E. Scott Daniels [Thu, 8 Aug 2019 14:15:43 +0000 (10:15 -0400)]
Add transport provider status to message buffer
This change adds a new field to the message buffer: tp_status.
The field allows the underlying "errno" value set by the
transport provider to be returned, in addition to the RMR
status, as a part of the overall message. In some environments
wrapper code (bindings) does not hav access to the errno value
and thus was unable to have the additional information on
send and receive failures.
The new field constitutes a backwards compatable change to RMR's
API, however the python wrapper API does not change. Minor version
bump, but the wrapper will see only a patch level bump.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I1b8a863318e2b2515441f7339b41c2856e46c1e4
E. Scott Daniels [Tue, 6 Aug 2019 20:24:20 +0000 (16:24 -0400)]
Correct spelling mistakes
Several spelling errors not corrected before last merge.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I181a8d34f51005ee3f1fe64b4d685c189f4673de
E. Scott Daniels [Tue, 6 Aug 2019 17:26:12 +0000 (13:26 -0400)]
Remove Nanomsg library generation
Nanomsg has reached end of life, and as NNG has proven to
be a viable replacement, with extra features, support for
nanomessage has been dropped. This change is to the CMake
configuration to remove the build and inclusion of libnng
from packages.
RMR libraries will also now be installed in the system
preferred library directory by default, and not blindly
into the lib directory.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie7bba044f8e2e06fd7920ae581bc35d7e0e42677
E. Scott Daniels [Tue, 6 Aug 2019 12:36:50 +0000 (08:36 -0400)]
Add new message type
The message type E2_TERM_INIT was added.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2be5fc7de8cd46c083146b7308eac4620825a3dd
E. Scott Daniels [Thu, 1 Aug 2019 14:36:14 +0000 (10:36 -0400)]
Template changes for user manual
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Idb8704abdebe55c36d5e703155248338ed2dc39b
Scott Daniels [Wed, 31 Jul 2019 16:51:22 +0000 (16:51 +0000)]
Merge "Correctly include license info"
Tommy Carpenter [Wed, 31 Jul 2019 16:44:00 +0000 (12:44 -0400)]
Correctly include license info
Issue-ID: RICPLT-1855
Change-Id: Ica21a054b4b1797e6d73368954882eb2b07c0ab8
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
Scott Daniels [Wed, 31 Jul 2019 16:19:52 +0000 (16:19 +0000)]
Merge "Add license here so shows up in pypi"
Tommy Carpenter [Wed, 31 Jul 2019 15:08:25 +0000 (11:08 -0400)]
Add license here so shows up in pypi
Issue-ID: RICPLT-1855
Change-Id: Iadb3858d31b4b3549ad74b9335b8b7ab05a427d8
Signed-off-by: Tommy Carpenter <tommy@research.att.com>
E. Scott Daniels [Tue, 30 Jul 2019 16:37:48 +0000 (12:37 -0400)]
Add publish script to the CI environment
The docker file will now set an entrypoint such that when the
container is run the ci/publish.ksh script is executed. The purpose
of the script is to copy the packages built into the image to a
mounted volume (/export by default). This eliminated the need for
an external process to extract files from the container.
Change-Id: I45ce98143bb84d2a802e1823ff003396bda6c9fe
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
E. Scott Daniels [Mon, 29 Jul 2019 20:02:11 +0000 (16:02 -0400)]
Add lsender test programme
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I92bb7162363033ded245f118d6a3071288f325c4
E. Scott Daniels [Mon, 29 Jul 2019 18:28:00 +0000 (14:28 -0400)]
Add support to generate man pages in txt and md
Manual pages can now be generated in plain ASCII text as
well as in markdown. This is in addition to the prviously
generated postscript, troff and rst. All output types are
generated when the build doc CMake configuration variable
is set high.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ib98e6df65c32944807a99a6c5b80859182038c4d
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
E. Scott Daniels [Tue, 16 Jul 2019 16:03:45 +0000 (12:03 -0400)]
Add missing send timeout man page
Manual page for the rmr_set_stimeout function was added and
other man page and documentation references were updated.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ie1b29a4db6456e6f5034ecfa4dd218952f1ff722
E. Scott Daniels [Mon, 15 Jul 2019 14:31:42 +0000 (10:31 -0400)]
Prevent unneeded usleep after send retries
If retries were enabled, an extra usleep for 1mu-sec was being
unnecessarily executed after the last retry attempt.
Doc related to retries modifided in main rmr_nng module.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: If8032a86bba5df63231c6dd5e50f262c64875c13
E. Scott Daniels [Fri, 12 Jul 2019 19:00:28 +0000 (15:00 -0400)]
Add new message types to header file
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4d3a89029d2ad33da6d4737aab4abc0f308a574f
E. Scott Daniels [Thu, 11 Jul 2019 14:24:01 +0000 (10:24 -0400)]
generate Add mbuf api funcion to reference to trace dat1
The rmr_trace_ref() function has been added to allow the user
programme the ability to obtain a direct reference to the
trace data in a message buffer.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2450dc4473b815460a8f011897f4b0a16d45fc51
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
E. Scott Daniels [Thu, 20 Jun 2019 12:23:11 +0000 (08:23 -0400)]
Update BUILD to reflect the dev package option
The -DDEV_PKG option was not described in the BUILD file.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I4a109fdaa603f6b0ede6c4a3254b2288b53e8ff1
E. Scott Daniels [Wed, 19 Jun 2019 14:59:18 +0000 (10:59 -0400)]
fix(ci): Correctly set internal package name
The package name placed inside of the package was the
generic project name, and not the specially crafted -dev
or -devel name needed for the development packages to
be different from the run-time packages. This change
captures the correct name interally when a development
package is created.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ia5139ba682c4c24f94becea55860ac9083a2d8c2
E. Scott Daniels [Tue, 18 Jun 2019 20:02:17 +0000 (16:02 -0400)]
fix(ci): Remove duplicate info from dev pkg
The dev package was including the library (.so) files
which seems not to be standard custom. The dev package
now includes only the header, man pages, and archive (.a)
files. The build_packages.yml file was also simplified.
Change-Id: Ib06eabcdc33a27345492b52a46a9bcaa50aa8176
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
E. Scott Daniels [Tue, 18 Jun 2019 17:14:32 +0000 (13:14 -0400)]
fix(build): Set the submodule refs correctly
When code was moved to LF the submodule references were
not set to NNG 1.1.1 and Nanomsg 1.1.5. This change
sets the reference points to the desired spots.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I13582b6601cf58c035b9069a80a2f94ba6003d26
E. Scott Daniels [Mon, 17 Jun 2019 19:08:17 +0000 (15:08 -0400)]
enhance(ci): Add multiple package build
The CI docker file now drives a CI build script which
will execute the unit and application based tests, and
if successful will build run-time and development .deb
and .rpm packages. Packages are left in /tmp by default
and are indexed by build_packages.yml which is also left
in /tmp.
Change-Id: Ieaa97e1cab1d9cbb721e19d667192e336becec08
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Matti Hiltunen [Mon, 17 Jun 2019 17:01:00 +0000 (17:01 +0000)]
Merge "enhance(test): Add route generation simulator"
E. Scott Daniels [Mon, 17 Jun 2019 14:09:14 +0000 (10:09 -0400)]
enhance(test): Add route generation simulator
The simulator provids the means to generate one or more
route tables which are delivered through the RMr route table
collector thread.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I95d73ad5a0dc28c380bed2b9cb314a8b646429d8
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
E. Scott Daniels [Fri, 14 Jun 2019 16:30:21 +0000 (12:30 -0400)]
fix(build): Correct var retention bug in cmake
The PACK_EXTERNAL flag was not being removed from the
cache after configuring the Makefile. This was causing
the pack external flag to remain set for all subsequent
executions of cmake even if the flag was not given (and
the default of 0 expected).
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I308e5bf64248d9107760ce0669be282437e5d06b
E. Scott Daniels [Wed, 12 Jun 2019 17:48:25 +0000 (13:48 -0400)]
enhance(ci): Add ability to generate RPM package
The CMake configuration was enhanced to add the ability to
generate an RPM package in addition to a Debian package
provided the rpmbuild command is available in the current
environment. The packages generated are now added to
the /tmp/build_output.yml file as fully qualified paths.
By default, the geneated package is a run-time package which
includes only the rmr libraries (no header files, and no
external libraries used to build RMr). If the cmake
option -DDEV_PKG=1 is given at configure time, a dev package
will be generated which includes the header files, and
will have -dev added following the version info in the
package name (e.g. rmr-1.0.34.x86_64-dev.deb).
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ifb606e1f8b1ad0f08b3c4bd8b4012c0382947e04
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
E. Scott Daniels [Tue, 11 Jun 2019 19:57:02 +0000 (15:57 -0400)]
enhance(build): Add deb refernce file for ci/cd
The CMake configure process will create a file in /tmp
which provides a fully qualified path to the deb file
which is generated when 'make package' is executed.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5b21230f13e63403493e3344cf1d56a847406122
E. Scott Daniels [Tue, 11 Jun 2019 17:51:37 +0000 (13:51 -0400)]
fix(test): Fix command line opt in run all script
The end to end run all test script was inavertently
setting the installed flag to test agains the installed
libraries rather than the current source libraries by
default.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic11b01a425897bce4cf0a47234f5fd398a7cad74
E. Scott Daniels [Tue, 11 Jun 2019 17:35:39 +0000 (13:35 -0400)]
fix(test): Remove unit_test dependency on install
The unit tests were accidentally dependent on the nanomsg
and nng libraries being installed on the system. Change
references them from the build envionment as intended.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I3ebee18a796e535eb20d39e06be7f6def7a603e5
E. Scott Daniels [Tue, 11 Jun 2019 17:23:55 +0000 (13:23 -0400)]
enhance(API): Add new message type
The message type 1090 was added.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I2d3f95fe580660749ad0c6a0a4374adbbbf9a165
E. Scott Daniels [Tue, 11 Jun 2019 17:19:19 +0000 (13:19 -0400)]
fix(man): Add missing man page
The get_srcip man page was never committed.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic4a2a818711f871ec33df1e9f810fbc499900020
Lott, Christopher (cl778h) [Mon, 10 Jun 2019 20:53:39 +0000 (16:53 -0400)]
Simplify continuous-integration build
Extend dockerfile to call make package.
Move dockerfile to new ci subdirectory.
Remove the (now unneeded) container tag file.
Document the docker-based build process.
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I94f9cb9eaabd797b76011aa9c6229345a799d4f9
E. Scott Daniels [Mon, 10 Jun 2019 14:34:51 +0000 (14:34 +0000)]
fix(doc): Correct typo on wh_open man page
The prototype and example on the rmr_wh_open man page
incorrectly reference rmr_open() and not rmr_wh_open().
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I667da2e5976ece04952d34e9110832f30f51e68e
E. Scott Daniels [Fri, 7 Jun 2019 17:19:27 +0000 (17:19 +0000)]
doc(log): Make err/cri/wrn tags consistent
Tags in error messages were inconsistent. They are now
all one of: ERR, CRI, or WRN to make it easier to search
stderr.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I83a1d95e29296eadb3749885e1ac7f6ff0da7826
E. Scott Daniels [Thu, 6 Jun 2019 16:44:33 +0000 (16:44 +0000)]
fix(rtable): Prevent direct send hairpins
If the current node is listed as an endpoint for a message type
that this process would add to the route table a hair-pin loop
back to the node can happen. This isn't desireable and this
change will prevent the current node from being added as a
recipient endpoint to any route table entry.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5a1b2bdaad2eab499ae5a1c7430238c1da2f3256
Add latency call/receive test support
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I70be670d063adfdf6505431a4a2ce72e846df0a4
Actual mods to implement hairpin loop avodiance
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ieead4fbf69ade58db1f37d1949cf0f03683c64de
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
E. Scott Daniels [Thu, 6 Jun 2019 16:21:24 +0000 (16:21 +0000)]
enhance(rtc): Tolerate missing newline in rtable
If the final record in a static route table does not have
a final newline (\n) this will be tolerated and the table
will be parsed as if the newline was present. On some
systems it is not possible for the user to control when a
final newline is added (or not).
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I5627bd2a0b59a628a20757428df7960149c8229b
E. Scott Daniels [Thu, 6 Jun 2019 12:10:26 +0000 (12:10 +0000)]
fix(rtc): Prevent core dump if \r used in rt file
Some operating systems, and/or filesystems, insist on using \r
as record termination (newline) indication rather than the
standard \n. RMr was dependent on only finding \n as record
termination when parsing the route table entries, however as
it may be out of the user control to generate a static file with
the proper termination this change allows \r to be in the static
file.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Ic18d5828f5a4b6855492b03718d105b57406431e
E. Scott Daniels [Mon, 3 Jun 2019 19:45:12 +0000 (19:45 +0000)]
enhance(API): Add source IP support to msg header
The message header now carries both the hostname and IP
address of the source process. The return to sender function
will use the IP address instead of the host name. It is possible
to set RMR_SRC_NAMEONLY=1 in the environment, or for the user
application to set this flag, to force only the use of the
hostname in the header.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: Id6305fab79fabbffffb343af1094e48fbf662b5d
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Lott, Christopher (cl778h) [Mon, 3 Jun 2019 20:53:52 +0000 (16:53 -0400)]
Add Dockerfile to compile and test RMR
For use by Jenkins verify job.
Add a few words in README about it.
Signed-off-by: Lott, Christopher (cl778h) <cl778h@att.com>
Change-Id: I31522003b5dc0cc1a2530a7734f022e5327c9a0c
E. Scott Daniels [Fri, 31 May 2019 18:50:57 +0000 (18:50 +0000)]
fix(internal): Correct potential nil pointer err
With multiple user threads, if concurrently sending to the same
round robin group, there was a potential for a nil pointer
to be selected representing an endpoint.
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Change-Id: I1ee57ff5d17998a5d097e583d497158f19eb300b
E. Scott Daniels [Wed, 29 May 2019 13:38:43 +0000 (13:38 +0000)]
fix(test): Correct unit test bugs
Return in mbuf_api_test.c was missing causing occasional
report of failed test when all tests passed.
unit_test.ksh wasn't properly searching for build directory
on systems which support lib64 naming conventions.
Change-Id: Idc208ef796c8dabf70c039e38fafab2a34db4df9
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
E. Scott Daniels [Mon, 20 May 2019 20:00:52 +0000 (20:00 +0000)]
enhance(API): Add multi-threaded call
Change-Id: I2d7c9abd2aabe4c2f05ba0935acaeb4f3fd8bb94
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Tweaks to call based on testing
Change-Id: I2cda8652ba045bf411bda77e64d2a92de8d2c0f2
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add nng call static module
Change-Id: I5e964078ae346b25cc283ea32239271ea69fa55e
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add locking round connect
Change-Id: Icf7a9c691385f199107b746c34c32f8f83b1ef04
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Tweaks based on testing; move mtrcv to static module
Change-Id: I75c38a9eeb34991da92fdb6f655b11d7f600d8a8
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Unit test changes
Change-Id: I7c1d3dcbe8802ce459a63b762c3ad3b8abeb7a61
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Beef up unit tests to passing after discount, all >70% before discount
Change-Id: I0e34052c142cfea77053512aac68008c3af49694
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Update application oriented tests to include mt-call
Change-Id: I0939abf96008ed7fde9640a070d09e683c0d5dea
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Fix possible nil pointer problem
Change-Id: I55e911761d54b9fc7500c121de018b485913763e
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Tweaks resulting from testing
Change-Id: Iaa6fb4d2719a39dbe209e17cc793c2341a477043
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add info message to make it obvious when mt-receive is enabled
Change-Id: I6dd3cd5ad01d5cf2a09dda87ce6fdd0bc5a4670c
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add man pages for new mt functions
Change-Id: Ia52e5d71502bcebe6af65024602dc32ca8877b52
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Add man pages to CMake
Change-Id: I60ff3a753d9249c8797d9141dd3ce2b5b55752b8
Signed-off-by: E. Scott Daniels <daniels@research.att.com>
Update CM version
Change-Id: I9e0f031f4e8a0ccba8ae7c788a6d9bc6dcb0f15b
Signed-off-by: E. Scott Daniels <daniels@research.att.com>