DDS

Comparing OpenSplice DDS to RabbitMQ

Q: How do you position OpenSplice DDS against RabbitMQ RabbitMQ is an implementation of Advanced Message Queuing Protocol (AMQP). We occasionally encounter customers evaluating DDS against AMQP and other technologies, so we produced a white paper that compares and contrasts the technologies (see Internet of Things and Industrial Internet Messaging Technologies Comparison Whitepaper. Yet for […]

On fault-tolerant data-paths

There are various ways to implement redundant (fault-tolerant) data-paths with OpenSplice: using IP-level 3rd party solutions many adapters nowadays support the notion of ‘channel-bonding’ where multiple network interfaces on a host are combined for redundancy or increased throughput as this solution works below socket-level (on packet or data-link layer), it functions transparently for the middleware […]

What are the differences in the Networking Services in OpenSplice?

First we need to distinguish between the (Apache license 2 based) open-source Community Edition (CE) and the commercially supported version of OpenSplice; The Community-edition only includes our DDSI implementation (implementing the OMG-DDSI rev2.2 specification) i.e., that assures interoperability with other DDS-vendors based on the standardized OMG-DDSI (also called ‘RTPS’) protocol.   The DDSI protocol is […]

How is the Global Data Space actually implemented in the network?

The information that is kept in the ‘Global Data Space’ can be divided into application-data (the samples of topics that are published/subscribed by applications) and meta-data (the standardized so-called ‘built-in topics‘ that describe which DDS-entities are active in the system i.e. the set of active participants, publishers, subscribers, readers and writers). Where information gets stored […]

Handling ‘invalid data’

A feature was introduced in the OMG DDS rev1.2  specification revision which is about the assurance to receive state-changes (e.g. when data gets disposed and/or unregistered) even in absence of actual data updates. It is related to the read/take semantics where a ‘take’ basically removes the data from a reader-cache. In the previous spec-revision,  in […]

Receiving warning level due to number of samples

If you receive the following warning message in the ospl-info.log file: Description : The number of samples ‘5000’ has surpassed the warning level of ‘5000’ samples. its just a warning.  Many times people don’t cleanup ‘their mess’ resulting in ever growing caches .. so we’d thought to give people a ‘hint’ that there might be […]

Large amount of data transmission problem

Problem I’m using OpenSplice to transmit huge packages (about 150Kb per package), and the receiver never receives them.  Debugging, it turns out that packages don’t seem to be sent out by the system. Solution Many times, people find the difference between ‘history’ and ‘reliability’ somewhat confusing so maybe that’s the case here too. When published […]

Whats the relationship between Reliability and History?

Reliability and History are complementary in the sense that History works independent from Reliability and serves a different purpose. Reliability is to assure that data is reliably delivered from a writer to a reader.  The spec states that ‘in steady state’ RELIABILITY means that all samples in a writer’s (history) cache will eventually be delivered […]

Upgrading OpenSplice DDS

We advise upgrading OpenSplice DDS when a new release becomes available. New releases contain bug fixes and changes as well as additional operating system support.  This page gives guidance for upgrading OpenSplice. Switching to the next OpenSplice DDS version The OpenSplice DDS versioning policy reflects the severity of the changes between releases. Changes can have […]

Installing OpenSplice DDS

This page explains how to go about installing OpenSplice DDS in your system. Software Requirements Before you install OpenSplice you may need to install other software. These are the requirements for different components of OpenSplice  OpenSplice DDS Tuner The OpenSplice DDS Tuner requires the Java Runtime Environment: Oracle JRE 6, 7 or 8. OpenSplice DDS […]

Installing OpenSplice as a Windows Service

This article explains how you go about installing OpenSplice as a Windows Service. This needs to be done when you install the product. The Windows installer for OpenSplice is an exe file. To start the installer double click the exe file or run the command from a console window. This will bring up the installer. […]

I get the error “HostID of this machine: Invalid”

Occasionally you may see the error “HostID of this machine: Invalid” when running the command rlmutil rlmhostid -ether $ rlmutil rlmhostid ether rlmutil v9.1 Copyright (C) 2006-2011, Reprise Software, Inc. All rights reserved. Hostid of this machine: invalid “` How to resolve the  error “HostID of this machine: Invalid” In order to obtain a permanent […]

Crash of Visual Studio 2013 when using C# and OpenSplice 6.7 or newer

Issue with Visual Studio If you’re using the initial release of Visual Studio 2013 (version 12.0.21005.1) in combination of OpenSplice 6.7 or newer you might experience a crash of Visual Studio. Adding the C# assembly to your project causes this crash to happen. You will get a popup that Visual Studio has stopped working and […]

OpenSplice Communication User Questions

This article contains some user submitted OpenSplice general communication questions that may prove useful to others. See the OpenSplice documentation for more information. [cmtoc_table_of_contents] Does OpenSplice have the ability to support many to one reliable communication? Yes, OpenSplice supports the RELIABLE OMG-DDS QoS policy that implies reliable communication between a publisher and related subscriber(s). This […]

OpenSplice Configuration User Questions

This article contains some user submitted OpenSplice general configuration questions that may prove useful to others. OpenSplice supports a considerable amount of configuration parameters, the easiest way to modify this file is to use the OpenSplice Configurator Tool, this shows all available configurations along with detailed explanations of their functions. See the OpenSplice Configuration Editor […]

OpenSplice API/IDL User Questions

This article contains some API/IDL-related, submitted OpenSplice questions that may prove useful to others. See the OpenSplice documentation for more information. Is the OpenSplice DDS Java API Operating System independent? All the OpenSplice API’s are Operating System independent as the source code is provided, allowing you to recompile with your preferred compiler. An additional advantage […]

OpenSplice QoS User Questions

This article contains some user submitted OpenSplice general configuration questions that may prove useful to others. See the OpenSplice documentation for more information. How does the Deadline QoS Policy work? The Deadline QoS Policy can be set on DataReaders, DataWriters or Topics. For a data reader it defines the time period within which a new sample […]

OpenSplice Memory User Questions

This article contains some memory related, submitted OpenSplice questions that may prove useful to others. See the OpenSplice DDS documentation for more information. [cmtoc_table_of_contents] How big is the Shared Memory segment (typically)? Is there a process attached to it? OpenSplice utilizes a size-configurable shared-data segment for holding all data and metadata. A minimum size of […]

OpenSplice General User Questions

This article contains some more generalised, submitted OpenSplice questions that may prove useful to others. See the OpenSplice documentation for more information. [cmtoc_table_of_contents] Does OpenSplice support real-time variants of the Java virtual machine? Does OpenSplice support real-time variants of the Java virtual machine? Yes OpenSplice is compatible with the real-time variants of Java, most notably […]

OpenSplice Durability User Questions

This article contains some user submitted OpenSplice durability service questions that may prove useful to others. See the OpenSplice documentation for more information. [cmtoc_table_of_contents] Using persistent durability, the Durability Service does not start correctly. Type : WARNING Context : DurabilityService File : ../../code/d_groupLocalListener.c Line : 727 Code : 0 Description : Persistency not enabled! Node : ACER […]