
Last week, the release of a new version of the Caché DBMS number 2017.2 was held.
We present to your attention a list of changes in Russian. A complete list of changes and Upgrade Checklist in English can be found
at the link .
Parallel de-logging when mirroring and restoring from the log
In Chaché 2017.2, the speed of de-logging is increased when mirroring and restoring from the log. This should improve the scalability of mirrored systems with high database update rates.
Journaling is the process of applying journal entries to a database. Previously, a single process (and a series of supporting prefetch processes) was engaged in updating the database and de-logging. In this release, several processes (up to 4) can apply journal entries in parallel to different databases. This feature works if enough processors and shared memory are available.
')
When mirroring, parallel logging can be limited by the node type using the new configuration setting. By default, this feature is disabled for sites of the "
Reporting Async " type. If the report includes data from several databases that are in the process of updating through journaling, differences in the timing of updates for different databases may lead to greater variability in the forecasts of these reports than in previous versions. The nature of this variability is essentially the same as the variability of any other reports compiled from changing data.
More information about parallel de-logging can be found in the “
Configuring Parallel Dejournaling ” section of the “
Mirroring ” chapter of the documentation.
When recovering from the log, parallel de-logging does not work if some non-standard settings are selected. In particular, it does not work when canceling the operation after any error or when using log updates. For more information on parallel de-logging, see the “
Restore Globals From Journal Files Using ^ JRNRESTO ” section of the “
Journaling ” documentation.
Parallel de-logging also does not work with a shadow server during system startup.
Finally, the new release of Caché contains two improvements that are applicable regardless of whether parallel logging is working or not. The efficiency of prefetch de-logging processes has been improved and memory usage has been limited to a de-logging queue of up to 50MB per process. In previous versions, the backlog queue could consume significantly more memory.
DeepSee new features
DeepSee Folder ManagerTo simplify the deployment of DeepSee components in the Folder Manager, a new option has been added for exporting related items. When exporting to a container class, this option will not only export the selected items, but also other items related to the selected items. Related items for the display panel include pivot tables and term lists used by the display panel. Related items for the pivot table include named filters, pivot variables, and common calculated members.
In previous versions, Folder Manager always used the server file system to export / import files. Now Folder Manager provides the ability to select a file system: local or server.
Flat panel filters - Named filters can now be used as default values for flat panel filters.
New iFind and iKnow features
iFind now supports searching by adjacent location, allowing you to find records in which the search terms are close to each other, but not necessarily in the specified order (as opposed to a more stringent positional search). To activate the search by adjacent location, take a list of the search terms, separated by a comma, in square brackets. Optionally, you can specify the range in which the specified terms should occur. For example, the query [Boston, New York, 5] will search for all entries where the terms “Boston” and “New York” are no more than five positions apart.
iKnow received several performance improvements when creating domains, especially when using systems with a large number of cores. Depending on your hardware and data set, you may notice a decrease in total processing time from 10 to 30%.
Expanded iKnow REST APIs. For example, you can get only the number of results or the number with a complete list of results for most existing API endpoints.
SQL enhancements
SQL Query AuditThis release adds the ability to audit the execution of SQL queries. There are three new system events for auditing SQL queries:
% System /% SQL / DynamicStatement - for dynamic SQL queries
% System /% SQL / EmbeddedStatement - for embedded SQL queries
% System /% SQL / XDBCStatement - for xDBC queries
To enable these events, go to the System Audit Events page in the Management Portal by choosing System Administration → Security → Audit → Configure system events.
Query optimizationSQL queries have received several optimizations. The query optimizer now takes into account
emissions selectivity when calculating the selectivity of join conditions, which leads to improved plans for some queries. External connections can now use all the optimizations available for internal connections. In particular, external join conditions, which can be partially satisfied with an index, no longer require the creation of a temporary index, which often significantly improves query performance.
Optional statement priority for ANSI SQL statementsThe new option allows you to set the priority of operators according to the ANSI SQL standard instead of the priority of operators "left to right", used by default in Caché SQL. The priority of Cache SQL is still the default, but you can change the priority through the API or through the General SQL Settings page of the Management Portal by choosing System Administration → Configuration → SQL Settings and Objects → General SQL Settings.
"Evolution" of fixed plansIn previous versions of Caché, the ability was added to fix SQL query plans and automatically fix query plans when upgrading to new Caché versions. If the new version included optimizations for query plans, then they were not applied to fixed plans when updating. In the current release, Caché identifies and marks those queries that can take advantage of new optimizations. On the main page of SQL expressions such queries will be listed in the “New Plan” column. You can unfreeze such plans to take advantage of new optimizations.
Where to find information about new features Atelier - Eclipse-based IDE
Atelier is an Eclipse-based IDE for Caché, available as a release independent of the Caché release cycle. New features Atelier described in the documentation provided with each new version. Atelier allows you to develop Caché applications on the client system, download applications to the Caché server, where they can be launched and debugged.
Future development will focus on the new IDE. Studio will remain available for installation, and developers can continue to use it for development. However, Studio will be regarded as a product on support and will not receive new functionality.
Some minor studio errors may not be fixed, depending on the resources required and the severity of the problem.
Atelier is available as a separate download in addition to Caché or Ensemble. You can choose to use a separate Atelier installer or a plugin for an existing Eclipse installation. Atelier uses the Eclipse auto-update mechanism to help users get updates in a timely manner. You can download Atelier on a
separate download page .
Other changes
Also in this release are presented many minor improvements and fixes. If you are upgrading from an existing installation, please see the detailed list of changes in the
Upgrade Checklist section.
- The XML Schema Wizard allows you to cascade delete subclasses when an instance of a superclass is deleted.
- Caché Nodejs supports Node 7.
- A new option to reset the CSP buffer, even if the buffer is not yet full.