Dataworks Enterprise Release 2.3.0
Summary
Dataworks Enterprise 2.3.0 was released in April 2002. This release is a consolidation of
all known bug fixes to that time plus some feature enhancements.
Availability
This release is available from Dataworks Enterprise download site or on CD (please contact
your Thomson Financial account representative).
Setup
This is a complete release of Dataworks Enterprise. It may be installed on a new
workstation or as an upgrade to a previous versions. Upgrades are supported to
all versions of Dataworks Enterprise since 2.0.0 (build 143).
Note
These details concern Dataworks Enterprise software release 2.3.0 only. Handlers and other
components detailed in this note will not necessarily be deployed on to
Dataworks Enterprise Production Network immediately. That deployment will follow a
separate schedule.
New Additions
The following lists new modules added to Dataworks Enterprise.
Channel
This module acts as a mirror source that can route requests via a (configured)
prioritised list of input sources. Channel supports options that allow either
rapid or phased failover of previous requests from lower to higher priority
input sources. It can also supports multiple channels each running under a
separate thread.
Intraday
New module supports intraday quote data from Global Topic trade servers.
Changes
The following lists bug fixes and changes to Dataworks Enterprise, by module.
APCNotify
-
Optimisation through the use of thread-local storage
-
Fix to threading problem causing system lock (even Ctrl-Alt-Del has no effect)
Cache
-
Fixes to compression of array containing negative numbers and to initialise the
tick size to 1.0 eliminating spurious results of expansion.
-
Checking for only one symbol set when removing from an incoming request. This
helps sources which only support one symbol set.
-
Race condition in CheckEndPoints means delete Endpoint that has just cleaned
itself up. Try and remove EndPoint and fail and log a message. Only log if
successfully removed EndPoint.
-
Correct problem in Statistics collection for numbers of endpoints
-
Cache controls now support IProvideClassInfo2
-
De-register new CLSID's as being controls - so they don't appear in VB toolbox.
New interfaces should be used via the References dialog.
-
No resolution on mappers, sources claiming to support any symbol set or
Resolution itself. Make sure handle sources with no symbol set separator.
-
Fixes to permissions login where resetting password.
-
Minor performance improvements
-
Add source level trace messages (plus new trace manager)
-
Fix problem with very long trace messages
-
Fix when enumerating configuration settings for wildcard matches and verifying
that they are a match.
-
Fix to error message if not setting log name prior to logging messages
-
Bug in CacheStats where server and source counts were mixed up. Don't pass up
CacheStats requests via RC and Freeway. Stats are always local. This greatly
helps in reducing the bandwidth requirements when monitoring a system.
-
Fixed bug corrupting arrays of VARIANT type in archive stuff
-
Compression now supports NaNs and zero length arrays
-
Clients now handle special field renames, servers delete renamed items out of
line.
-
Added oleautomation to IRTCClientEvents (and similar) to allow these to be
marshalled. This is required if you want to use RTCache as a COM+ application -
for reasons best known to MS.
-
Cache now propagates stale msgs if already stale provide stale code or msg is
different.
-
Removes resource leak in field painting code.
-
Type library changes to discriminate between various versions of cache.
-
The performance boost for the foreground application is now not disabled by
default when Dataworks Enterprise is first launched.
Simple Client Program
-
Instrument combo box remembers source/instrument/options/symbol set
-
Options are enterable on the main form screen (rather than on the options
dialog)
-
Symbol Sets are enterable on the main screen (options dialog is now just the
application default)
-
Provides a history (depth is only one) allowing you to go back to the previous
record
-
Source info now tells about other things about a source apart from just its
route
-
Options and Symbol Set boxes enable or disable depending on whether the source
supports the features
Source Monitor Server
-
Rename program to "Source Monitor Server"
-
Remove view control from default interface - can still be enabled from menu.
Normal procedure should be to view status information remotely via Dataworks Enterprise
connections (for example using the SrcMon2 application).
-
New request which is simply a valid source name will provide a record giving
details of the source
-
Source Monitor View for a source provides more information
-
Add "version$" request to provide version details of components installed on
server.
-
Add "config$" request to report Dataworks Enterprise configuration database current on
server.
-
Add "drive$" request to report details on a disk drive on server. For example,
"drive$c" returns details on C:, including disk size and free space.
Hydra
-
Fix bug handling renamed items.
-
Now propagates source type, data type and symbol sets unchanged from the first
incoming source (except if you select exposed or published source from the
interface, in which case it adds the appropriate flags to the source type).
Launcher
-
RTLaunch now allows you to interactively or through COM do a software abort
(i.e. generate a stack trace of a program and close it down). These are
actually two quite separate operations. Thus it is possible to do a stack trace
and then continue, but it may make sense to present it as part of the same
thing.
-
RTLaunch Program has a new readonly property called hWnd which is the handle of
the window it is managing for hide and show as well as polling.
-
Bug fixed in script loading the same script repeated and dealt with some
problem associated with security contexts.
-
New option to disable the exit menu when running as a service (registry entry
"HasExitMenu", defaults to 1 (true)). To disable, add the entry and set it to
zero.
-
Removed dependency on WININET.DLL and link to it on the fly so that the
launcher can be installed and run without having to have WININET installed.
-
Added to environment: IP_HOST_NAME The fully qualified DNS name of the host
IP_HOST_ADDR A semi-colon delimited list of IP addresses available on this
host.
-
Fixed a bug in the RTLaunch.exe on NT does not allow display of Page Faults or
Page Faults delta on NT when it should.
-
Bug fixed where the launcher ignores windows with empty names.
-
Sizeable horizontal and vertical windows
-
PID in hexadecimal not decimal. To conform with Task Manager.
-
Temporary script file to be backed up (to configurable number of instances).
Controlled by the key NumUserScriptBackups and defaulting to 1
-
Persistent option is on by default in Add Process Dialog
-
New method called wait in the script host (default script environment). This is
analogous to the Wait command in the old launcher syntax. The method takes a
single argument which is a variant and can be: a) a number, in which case, the
number is assumed to be milliseconds to wait for. b) a string, in which case,
checks if it is a file name and if so, wait for the file to come into
existence. If it is not a valid file name, attempts to open a Mutex, Event or
Semaphore. If these are successful wait on the object to be signalled. If not,
return an error. In all cases during which waited time the script engine will
stop executing, but incoming method calls will continue to be handled
-
Task List View Show scheduled tasks in a modeless popup. Updates when scheduled
task executes or changes. Allow add edit, delete or execute Now on the task and
setting of detailed logs for each task. Tasks can now be persisted
automatically.
-
Tool List View Show tools in a modeless popup. Updates when tools change. Allow
add edit, delete on the tool and setting of detailed logs for each tool. Tools
can now be persisted automatically.
-
Run Script View Allows scripts to be loaded edited and sent to the execution
engine for testing purposes. Scripts can then be saved (no persistence
support).
-
Changes to object model, Tools and Task now have persistence, tasks have an
execute method.
-
Bug fixes to Tools and tasks remove method, better handling of dialog messages,
management of child dialogs during minimise, editing tasks and better error
reporting for invalid tasks and tool parameters.
-
Configurable ignore window lists. The reg key
HKLM/System/CurrentControlSet/Control/RTLaunch has values: IgnoreClasses
REG_MULTISZ Prefixes to class names to be ignored (added to those below)
IgnoreWindows REG_MULTISZ Prefixes to window names to be ignored (added to
those below) The default list of class names are: Auto-Suggest Dropdown,
BaseBar, ComboLBox, IME, Internet Explorer_Hidden, msvb_lib_tooltips, NDDEAgnt,
OfficeTooltip, OleDdeWndClass, Shell_Traywnd, SysFader, ThunderRT6FormDC,
ThunderRT6Main, TOSC:, ToolbarWindow32, tooltips_class32, VcTipWindow,
VsCompletionPane and window names: Socket Notification Also, new verbose
message when a window is connected (giving handle, class name and window name).
-
Better closedown code for stop/restart stuff, specially in the case where a
window is not found. Handles VB forms better.
-
Stopped printing complete symbol lists in a stack trace when in detailed log
mode as it generates multi-megabytes for VB, takes over five minutes to do (in
which the launcher won't operate properly). It doesn't give us much anyway.
-
Add the ability to open files either from config or system config from the File
menu.
-
The File menu is added to the taskbar menu
-
Fixed the problem with not getting the default action in the task menu.
-
Fixed the bug associated with doing a collection lookup using a number from
VBScript (affects all collections in the launcher).
-
Save settings box is now checked by default
-
Changes to settings are saved away immediately to the registry.
NewsServer/NewsReal
-
Ability to filter by category code on ingest. The new key allows an arbitrary
collection of category codes to be used as a filter string with AND, OR and NOT
logic and nesting in parentheses. For instance the filter might look like:
((MONEY OR BOND) AND (R/US OR R/EU)) OR 77070
SymXRef
-
Added CountryCode field from Company level request.
-
Added Count ? query option which just returns number of items in a query.
-
Can pass desired returned chain length with requests as optional data
(LinkSize=%d).
-
Source mirroring option is now disabled by default.
-
Configuration file default now lists all GlobalTopic supported exchanges.
-
Suffix field upgraded to support 5 character exchange codes.
-
Can now enter manual list of exchanges to do immediately.
-
Added configuration that prevents deletion of exchange entries if more than 10%
of items being deleted.
-
Manual list option can be used to override 10% deletion limit.
-
History field now removed as this supported legacy client requirement.
-
LIST, ? and EXCH queries can now accept COLUMNS= option that lists desired
field list to be returned in chain.
Excel Addin
-
Fix bug where string validity check on RTImport parameters rejected Excel
ranges.
-
Fixed leak where if RTImport used cell references, changes to the instrument in
the cell references would not release previous request.
-
Added _RTStatusType, _RTStatusCode and _RTStatusMsg fields so that they can
return the record status in RTImport
ReqList
-
Fixed leak in CRTField assignment.
RemoteClnt
-
Now limit total number of requests upstream based on limits set by RemoteSvr.
-
Now do pending limits on number of requests upstream based on RemoteSvr
settings.
-
If RC renames source, it now adds rename to the Host Route details of the
source.
-
Sources submenu now split into one for data and one for stats sources
-
Added menu option to force socket disconnection.
RemoteSvr
-
Now send Group and max request details to RemoteClients in the VersionInfo msg.
-
Added splitter window between treeview and logger window.
-
Treeview now lists number of RemoteClient connections.
-
Treeview now manages RemoteClient connections on a group basis.
-
Now supports optional outbound source renaming.
-
Now supports Group membership configuration using multiple line entries.
-
Now supports Sourcesets to simplify configuration of sources on a group by
group basis.
-
Group name, onwatch and pending levels now reflected in client request on the
system source.
-
Client statistics item now doesn't make itself stale when client disappears.
-
Source Loadings menu option now lists all sources rather than just sources with
load.
-
Now allow user to display list of source mappings per group.
Global Topic
-
Logging changed to detail when the source was dismounted.
-
Dismount message & time also recorded on the text box of the handler dialog.
-
Mag list fix - failure now does not occur with Mag list config greater the 256
bytes.
-
Level 2 information availiable in form of yellow strip, including depth for
market makers and quotes plus yellow strip.
-
The handler is configurable to be delayed before logging on. This is to partly
suppress the continues 'head banging' the handler does to try connect to the
same GT server (but the server will not allow a logon for certain period). The
added benefit is this stops overloading the log with worthless messages.
-
Redundant messages from the GT Server suppressed whilst logged off.
-
INDEX instrument added to provide a 'root exchange' navigation of the PGE
handler data.
-
Added Source Monitor 2 support & '_help' record added for details on the
handler
-
Added Resolution support (symbol set is "PGESymbol").
Datastream (History)
-
Support underlying changes in ds xml and rover api's.
-
Better handling of DS expressions in request.
-
Better handling of DS errors.
-
Option to return NaN condition as the IEEE standard value using ~NA=NaN.
Default is still to return zero (this is being reviewed).
-
Support for yearly timeseries (~Y) option.
-
Added Resolution support (symbol set is "DSCode").
-
Added extra module "dsMap" for Datastream mapping using Resolution. This
supports all standard symbologies used by Datasteam under the umbrella input
Resolution coding of "Datastream" and maps to the base "DSCode" symbol set.
VFDB
-
Enable permissioned requests with VFDB username/password. Note this is not the
same as Dataworks Enterprise permissioning. The request is passed, with username and
password to the VFDB server for authentication and processing. Request is
appended with "#user,password". Request templates may specify that this option
is required.
-
Add broker detail template "/BROKERDETAIL". This request must have the
username.
-
Renames requests with username to base request if username not required. This
will be used by a downstream storesvr mirror that will always append username
for a given client.
Sharewatch
-
Enable request by ISIN.
-
Handle errors in underlying xml api.
-
Extra field for percent change of any individuals holding (PCCHANGE).
ADO Handler
-
Minor bug fixes.
-
Supports specifying symbol in configuration.
-
Supports substitution parameters from requested instrument. For example,
request may be "X=1 Y=2" which maps to SQL statement specified in config file
containing $(X) and $(Y) codes to get sustituted (by 1 and 2 in this example).
Defaults may be specified in config file.
Store Server
-
By default mirrors symbol set from underlying source.
-
Handle renames on underlying source. Saves both requested and renamed images to
disk cache.
Base Server
This module provides code base for Datastream, VFDB, Piranha, Sharewatch, ADO
handlers and Store Server. Fixes apply to all those modules.
-
Improved disk cache handling and cleanup. As disk free space reduces cache
clean up frequency increases and converse.
-
Improved log message handling - messages are queued and written to file/list
window on a posted message process.
-
Remove some propagation of status values (for example from _SOURCE to _SERVER
record) to improve overall performance.
-
Fix bug handling recursive calls to server - in fact prevent processing
requests recuvsively using a pending queue. This was causing some GPFs in ado
and xml handlers.
-
Cache "no such item" to disk statuses by derived classes.