The Millistream MDA project team is pleased to announce the release of
version 0.9.37 of our open source application for updating SQL servers
with data from the Millistream Data Feed.
* It was discovered that the columns ‘trades.canceltime’ and ‘trades.agreementtime’
where not converted to local time even of the ‘localtime’ setting in mda.confg where
set to ‘1’.
* It was discovered that if the ‘localtime’ in mda.config where set to ‘1’ in order to
convert timestamps from UTC to the local time of the machine, the timestamps where
truncated to whole seconds, i.e the millisecond part (if available) where removed.
* The ‘ignoremillisec’ setting in mda.config has been renamed to ‘truncatetime’ (the MDA
will however still support ‘ignoremillisec’) and the setting has been extended so that
it now support the following values:
– 0 : Truncate to microseconds, i.e ‘HH:MM:SS.mmmuuu’ or time(6). This is the default.
– 1 : Truncate to whole seconds, i.e ‘HH:MM:SS’ or time(0)
– 2 : Truncate to milliseconds, i.e ‘HH:MM:SS.mmm’ or time(3)
* The CommandTimeout property for the Microsoft SQL Server are now set to ‘0’ to allow queries
to complete even if they take a very long time (if the SQL server is busy). If not set as
was the case in previous versions of MDA the default value in MSSQL is 30 seconds which could
lead to endless loops on very busy SQL servers where the MDA would re-issue the same query over
and over again if they took longer to execute than 30 seconds. The new value of ‘0’ means that
the timeout is disabled which matches how the other SQL servers work (MySQL/MariaDB/PostgreSQL).
* If the account credentials is invalid then MDA will now log so instead of just logging that
it has been disconnected due to the server shutting down.
* The sql script for MSSQL have been cleaned up so that the ‘time’ column for tables which
will never get timestamps with fractional seconds now are time(0) instead of time(7). And
the ‘time’ column for the ‘trades’ and ‘orderbooks’ table have been changed from time(7) to
time(6) since time(6) will be the highest time resolution that MDA supports. This will only
affect new installs and there is no need to update your sql server in order to incorporate
these changes since they are purely estetic.
* The sql script for MySQL (v5.6.4 and above) and MariaDB (any version) have been changed in
order to prepare for microsecond resolution in the ‘trades’ and ‘orderbooks’ tables where
time(3) have been changed into time(6). There is at the moment no reason to update existing
installs since such timestamps are not yet distributed, and is really only needed if you
really want to have microsecond resolution in your database once they will be available.
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.37 to be the best version of MDA available and we
recommend that users of older versions upgrade as soon as possible.
MDA 0.9.37 is available for download from the following locations:
Windows installer: ftp://ftp.millistream.com/binaries/windows/
Red Hat / CentOS: https://packages.millistream.com/rpm/
Debian / Ubuntu: https://packages.millistream.com/apt/
Source code: ftp://ftp.millistream.com/sources/
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).
Information on how to add these repositories are available at
And as usual, if you have any questions what so ever regarding this release
or other things, don’t hesitate to contact us at firstname.lastname@example.org
The Millistream Development Team