OpenSplice DDS

How to Configure the DBMS Connect Service

In this article we will demonstrate how to configure the OpenSplice DBMS Connect service to work with MySQL on both Windows and Linux. The data-centric model utilised by DDS is a natural fit for the data-centric model utilised by relational database systems. DBMS Connect provides seamless integration between the two systems. It allows the same […]

Configuring Shared Memory in OpenSplice

This article explains how you can configure shared memory in OpenSplice DDS.  There may be occasions when you need to alter the default settings. OpenSplice DDS can run in two different architectural modes. These are: Single process or standalone deployment Federated or shared memory mode [cmtoc_table_of_contents] Shared Memory Mode In shared memory mode you need […]

Communication stops after 10 seconds

Description of the issue When running any combination of OpenSplice DDS applications using DDSI protocol on UDP multicast, communication sets up as expected at applications startup, but stops 10 seconds after startup. The origin of the issue : Bad multicast support These  kinds of problems are most often due to multicast communications issues. Multicast packets […]

Memory Claim Denied Error

Memory claim denied errors may appear in the OpenSplice log file. This is a symptom of running out of shared memory. These are the steps to follow to troubleshoot this problem. Memory Claim Denied Error in ospl.error log OpenSplice DDS can runs in two modes, federated or shared memory mode and single process memory mode.  […]

Error: libssl.so.10 was missing in Ubuntu 14.

error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file or directory This error occurs when enabling DDS2ie as a transport for it’s encryption. This is a common problem with the default SSL libraries in Ubuntu and is unrelated to OpenSplice.  Luckily, it is an easy patch to make. First, SSL […]

Installing OpenSplice DDS on Windows without the GUI

Sometimes you may want to go about installing OpenSplice without the installation GUI in order to automate installation. This article documents the steps for doing this. Normally installation of OpenSplice is done with the installation wizard which guides you though the installation steps. On occasion you may want to install without using the GUI in headless mode. […]

OpenSplice DDS Configuration

Wondering how to configure dds?  OpenSplice DDS configuration  is easy to do.  Configuring DDS allows you to choose the perfect set up for your use case. [cmtoc_table_of_contents] How do you configure OpenSplice DDS? Configuration of OpenSplice DDS is done with an xml file. This file allows you to specify which architectural mode  OpenSplice will use. […]

Comparing OpenSplice to other DDS implementations

Q: How do you position OpenSplice DDS against other DDS implementations? Most (commercial) DDS-implementations are OK and for many use cases are sufficiently ‘technically equal’ (w.r.t. properly implementing the DDS-specification), so that decisions are often made based on non-technical reasons such as locality, support, relationships and licensing, etc. Yet it’s good to know where we […]

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 […]