Millistream Database Application (MDA) version 0.9.38 released

The Millistream MDA project team is pleased to announce the release of
version 0.9.38 of our open source application for updating SQL servers
with data from the Millistream Data Feed.

* For instruments that receive both a LastPrice and a NAV the ‘diffX’ and ‘diffXprc’
values in the ‘performance’ table could be accidentally calculated using the NAV instead
of the LastPrice if the LastPrice was NULL when the NAV was set. We have now changed it
so that NAV is only used for the calculation of diffs if the InstrumentType is set to 8
(Mutual Fund), for every other instrument type the LastPrice value is used.

* It was discovered that MDA upon receiving a InstrumentDelete message would try and
delete data from a table even if that table where disabled in the config (for example
if ‘requestperformance’ was set to “0” in mda.config then the MDA would still try to delete
the insref from the ‘performance’ table) this could lead to unnecessary error logs if
the tables where disabled in the config due to them not existing.

* The MDA will now only calculate the diffs in the ‘performance’ table if both
‘requestquotes’ and ‘requestperformance’ is enabled in the config, since data from both
messages are needed in order to calculate the diffs.

* On Linux systems we now create a “mda” user and group since the previous use of “nobody”
was not fully secure. This user and group is also used by default in new installs.

* Failed updates to the ‘orderbooks’ table would log more than one error for each error.

* The AppArmor profile have been updated to work with MariaDB, the previous profile referenced
the MySQL profile that is normally installed with the MySQL server but the MySQL profile
incuded in MariaDB is empty so the MDA could not access the MySQL socket in /run/mysqld/mysqld.sock

* Write the current size and the configured maximum size of the internal hash table used for
the orderbooks to the output of “mda –status” as ‘instrument-hash-size’ in the format:
‘current_value/maximum_value’. The maximum_value can be configured in mda.config under the
‘MILLISTREAM’ tab with the ‘instrumenthashsize’ property, the default value is ‘100000’.

As earlier announced, as of v0.9.33 the database schema is developed independently of
the MDA and the latest schema including upgrade scripts is available on our ftp server
under the documents section (MDA_schemas_[version].zip). As of this writing the latest
database schema is v85 and thus the file is available from:

Do note however that the latest schemas are only needed if you need the new columns/tables,
they are not mandatory to operate the MDA!

We consider MDA 0.9.38 to be the best version of MDA available and we
recommend that users of older versions upgrade as soon as possible.

MDA 0.9.38 is available for download from the following locations:

Windows installer:
Red Hat / CentOS:
Debian / Ubuntu:
Source code:

Windows users upgrade by running the installer for the new version.

Linux users who have added our apt or yum repositories can upgrade by simply
issuing “apt-get update && apt-get upgrade” (Debian/Ubuntu) or
“yum upgrade” (Red Hat/CentOS).