OpenDDS 1.3
Release notes for Version 1.3 of OpenDDS
- This will be the final release of OpenDDS that will build with the current
patch level of TAO 1.4a. This release is compatible with (the current patch
levels of) TAO 1.4a, 1.5a, and 1.6a, as well as the current DOC Group
beta/micro release. Future releases will be compatible with TAO 1.5a, 1.6a
and the DOC group -- see the README file for details on TAO versions.
New to this version are the following changes:
- Implemented the Communication Status entity structures and behaviors to
conform with the version 1.2 specification (formal/07-01-01). This
includes member name changes and additions to LivelinessChangedStatus;
modifying and extending the SampleRejectedStatusKind enumeration; and,
adding new members to the PublicationMatchStatus and
SubscriptionMatchStatus structures. - Implemented the TRANSPORT_PRIORITY Quality of service policy using the
policy value to set thread priorities and DiffServ codepoint values.
The current implementation does not honor the Changeable behavior of
the policy. Only the intially established policy value is honored for
any given DataWriter Entity. Thread priorities are not currently set
on Windows systems. - Implemented the LATENCY_BUDGET Quality of service policy as a
monitoring feature with an extended listener callback for exceeded
budget values. Statistics for latency are made available via an
OpenDDS-specific extended API as well. - Implemented the ReadCondition interface and associated operations
on the DataReader (such as read_w_condition). - Implemented the QueryCondition interface, but only queries of the form
"ORDER BY a[, b, c...]" have any effect. In other words, it's a mechanism
that controls the order of the data-set received from any given read or
take operation. The ORDER BY fields can be either primitive types
(including strings) or primitive types in nested structs (using a.b). - Corrected a bug in the LIFESPAN QoS implementation where the Topic QoS
was used. Now the DataWriter QoS takes effect. - The PARTITION QoS policy now accepts character class wildcards using [].
- Corrected a bug in the PARTITION QoS implementation where the default
QoS would not match against the '*' wildcard. - The DURABILITY QoS implementation was corrected so that readers requesting
the VOLATLIE kind will not receive historic samples from writers. Since
there were some use-cases for the old behavior, it is available through an
OpenDDS-specific interface -- see $DDS_ROOT/dds/DdsDcpsSubscriptionExt.idl. - When the writer's DURABILITY QoS is PERSISTENT, the format of the
data stored on the filesystem has changed. Instead of a single file in the
current working directory, a directory is now used. This is configurable
using the option -DCPSPersistentDataDir. - A Java Message Service 1.1 (JMS) provider built on top of OpenDDS is now
available in $DDS_ROOT/java/jms. JMS Topics are supported (not queuing).
See the README in that directory for more info. - The $DDS_ROOT/bin/federation utility has been renamed to opendds_repo_ctl
and now supports shutting down a remote non-federated DCPSInfoRepo process. - Deleting a DataWriter from a Publisher now blocks until pending samples have
been delivered by the underlying transport. By default, the DataWriter will
block indefinitely. To change the default blocking behavior, you may
specify a number of seconds to block with the -DCPSPendingTimeout option. - Instance handles are now compliant with version 1.2 of the DDS
specification. Additionally, the contains_entity and get_instance_handle
operations have been implemented. - Implemented DataWriter::wait_for_acknowledgments() from formal/07-01-01.
- Added support for Windows Mobile 6 (WinCE) Standard SDK, and ACE_USES_WCHAR
builds in general. See docs/design/wchar.txt.
Using the GitHub "releases" page
Download OpenDDS-1.3.zip (Windows) or OpenDDS-1.3.tar.gz (Linux/Solaris/MacOSX) instead of using the GitHub-generated "source code" links.