Login  |  Register
Forgot your password?


DBMS Linter Modifications List of 23.10.2012




  • DBMS Linter has been ported to OpenVMS/Itanium platform.

Moxa IA-240

  • DBMS Linter has been ported to Moxa IA-240 minicomputer.


  • Conflict resolution mechanisms (regarding conflicts leading to system reboot after install/update operations) optimized
  • Conflict resolution (when installing two or more copies of Linter on one computer for JDBC, ODBC and .NET components) added.
  • Conflict resolution when installing two or more copies of Linter on one computer modified.
  • Installation and modification of earlier installed components without administration rights corrected.
  • Command file generation for delayed first installation corrected.
  • Deletion of some components (particularly ODBC, JDBC and .NET) corrected.

Linux и QNX

  • Enhanced distribution compression method implemented (the distribution size is now 1.5 times smaller).
  • Deinitialization of shared libraries on upload added.


  • lindesk utility added to the build for Andriod.

DBMS Kernel and SQL translator:

  • Transaction work optimization in the Optimistic mode enhanced.
  • Working with files over 2 Gb optimized.
  • The first two arguments of the LIN_INDEX_INFO function are now similar to those of LINTER_DICT_INFO.
  • The ACCESS function arguments can now be implicitly converted to required types.
  • LIMIT construction action corrected for the following special cases: 1) if "LIMIT 0", "LIMIT N,0" or "FETCH FIRST 0" is set, 0 rows are selected; 2) if "LIMIT -1", "LIMIT N,-1" or "FETCH FIRST -1" is set, all rows are selected (if N is non-negative, all rows starting from the Nth row in the selection will be fetched).
  • The default value of the /TCP key for Windows is now the same as for UNIX.
  • Reuse of rows for a partially filled table after ALTER TABLE SET RECORDS LIMIT now starts only when the row limit is reached.
  • It is now allowed to delete a global temporary table if there is only one channel currently working with it.
  • BY SYSTEM authorization by domain name in Windows is now allowed.
  • Thread stack size for executing asynchronous user handlers for a multithread client enlarged.

Stored Procedure Language:

  • Incorrect SMALLINT processing case for a stored procedure parameter eliminated.
  • Incorrect behavior of the read_blob_char, read_blob_nchar and read_blob_date functions (in case the input buffer is full) corrected.
  • UTF-8 support for the dupchar procedure added.
  • The work of strpos, nstrpos, ltrim, add_motnhs and datesplit functions optimized.
  • UNICODE string concatenation in procedures corrected.
  • Return of a NULL value from a procedure corrected.
  • REAL >DOUBLE conversion improved.
  • If an exception inside a procedure returning a cursor is not fetched, the error code is no longer ignored.
  • BADCURSOR and CURNOTOPEN exception return corrected..
  • DIVZERO and BADPARAM exception processing corrected.
  • The use of BYTE type in conversion functions inside stored procedures is now allowed.
  • BIGINT value syntax processing corrected.
  • ID character set corrected.
  • OUTOFCURSOR check for external actions with cursors corrected.


The resolution settings for all graphic utilities are now stored in a single file. Numerous changes have been made to the RELAPI graphic library for compatibility with various QT versions.


  • Progress bar work improved.
  • LOD file loading with different delimiters in different rows corrected
  • Viewing function for images over 100 Mb implemented.
  • If there is no node in the inspector tree, the object browser can be opened via the toolbar.
  • The work of the SQL text marking parsers, inl commands and extended query editor optimized.

dbcgui (network client) and dbsgui (network server)

  • dbcgui log format corrected.
  • Corrections for some X11 window managers implemented.
  • Configuration node signature update (when changing the default server via the context menu) corrected.
  • Driver thread startup mechanism for MSVS5.5 x64 / Qt 4.2.1 corrected.


  • Special data restoration case added (in case the $$$SYSRL table converter is damaged).
  • Problem diagnostics in indexes improved (the file number and file page number are now displayed instead of the combined node number).
  • Problem diagnostic errors associated with LOGON/LOGOFF triggers eliminated.


  • Program behavior corrected (in case an undefined environment variable is used to specify the directory).
  • File size checks added.
  • Automatic localization (message language selection depending on the environment variables specified) added.


  • BLOB GET syntax modified (it is now allowed not to specify the table user name).


Path finding procedures when installing the PHP, Perl and Ruby interfaces corrected.


  • Unused NCurs field deleted from QLinterDriver class.
  • It is now possible to specify the Qt library directory (not QTDIR) when building the interface.
  • QSqlField::length() function operation in QT 4 optimized.
  • EXECUTE and CALL sentence processing for stored procedures unified.
  • The influence of earlier executed QSqlQuery::exec() on working with parameters after QSqlQuery::prepare() eliminated.
  • Situations with truncation of maximum-length column name by one character eliminated.
  • Working with BLOB values in the new interface optimized. Warnings are now returned when trying to call functions not supported by the current interface version.


  • ColumnOrdinal field filling corrected.
  • Work with varying-length stored procedure input parameters improved.
  • It is now prohibited to use the command.ExecuteReader() method to create several opened DataReader objects. InvalidOperationException is generated in this case.

Call (intlib)

  • Maximum negative BIGINT value processing corrected.
  • Conversion of expressions to text for CHECK corrected.
  • SMALLINT values output in CHECK text corrected.
  • Text generation for the TRIM, LTRIM and RTRIM functions corrected.


  • Memory leakage case eliminated.
  • 64-bit version operation improved.

PCC (embedded SQL)

  • The message language is now selected automatically depending on the environment variables.


  • EXECUTE and CALL sentence processing for stored procedures unified.


  • Build support for new PHP versions added.


  • XML parser work corrected.


  • Memory leakage case eliminated.


  • BIGINT data precision return value corrected.

Problems Eliminated:

  • with erroneous deactivation of data page search, which slowed down the UPDATE operation;
  • with the operation of the RANK, DENSE_RANK, FIRST_VALUE and LAST_VALUE functions if there is no PARTITION BY;
  • with the processing of NULL values by the FIRST_VALUE and LAST_VALUE functions;
  • with IN-MEMORY tables having the AUTOLOAD flag;
  • with erroneous temporary unlocking of records locked by FOR UPDATE;
  • with the operation of the query cache when submitting a non-pretranslated query after an identical pre-translated query;
  • with the operation of the response cache if there are logoff triggers;
  • with synchronization by time and the work of events by timer in Windows;
  • with possible omission of event activation in case the event is being activated by another channel;
  • with multiple generation of GENERATED AS IDENTITY column values during the execution of one query;
  • with inserting a SYS_GUID() value into a VARBYTE column;
  • with inserting a SESSIONID pseudo-value into a table;
  • with specifying the default temporary files directory in DBMS Linter for Linux;
  • with creation of unused log files when working in the read-only mode;
  • with saving a workstation information reference in the system directory if the workstation description has been deleted;
  • with the CONVERT function behavior if the codepage name is incorrect;
  • with the logoff trigger behavior if the last operation returned an error code;
  • with the processing of BEFORE STATEMENT and INSTEAD OF triggers for UPDATE;
  • with the operation of the NULLIFERROR construction if the nested function argument is a CAST expression;
  • with type conversion inside CASE- and DECODE-expressions;
  • with batch data loading in the autocommit mode in Linter Multiversion;
  • with erroneous prohibition of NULL values for GENERATED columns (except GENERATED AS IDENTITY);
  • with the erroneous prohibition of the ALL keyword for the COUNT function;
  • with the omission of incorrect calls to columns from queries with HAVING but without GROUP BY;
  • with the REAL->DOUBLE conversion in CASE/DECODE;
  • with duplicate columns in the CORRESPONDING list;
  • with the ALTER TABLE ADD COLUMN operation erroneously marking data pages as full;
  • with displacement of the active page in the read-only mode;
  • with inputting information into GENERATED AS IDENTITY columns in the optimistic mode in Linter Multiversion;
  • with the SET QUANT TIMEOUT command.
Main | Back to the list
ѕрокрутить вверх