GT.M V5.0-000 available

GT.M V5.0-000 available

Post by K.S. Bhask » Wed, 08 Jun 2005 08:12:16

GT.M V5.0-000 is now available. V5.0-000 is a major release of GT.M.
The fact that it has a new top level version number - V5 vs. V4 - means
that it has a new database format. There is significant new
functionality as well, as described in the V5.0-000 Release Notes
( ).

Even though a database format change affects every index and data block
in the database, GT.M V5.0-000 comes with an upgrade procedure that
operates mostly in parallel with normal application operation. Stand
alone access is required typically only for a few seconds. Note that
for applications deployed in a logical dual site configuration, the
upgrade can be accomplished with continuous application availability.

The most significant enhancements in this release are as follows:

1. Transaction counts are increased from 32 bits to 64 bits.

2. M names can be up to 31 characters long.

3. A new intrinsic function, $INCREMENT(glvn[,expr]), is provided to
atomically increment a global variable by a numeric value.

4. Network services can now be written in GT.M and deployed under

5. On the secondary of an application deployed in a logical dual site
configuration, helper processes can now be used to speed the rate at
which updates can be committed to disk.

6. There is now an option for a database file to allow existing global
variable nodes with null subscripts but to prohibit setting/updating
global variables with null subscripts.

7. On OpenVMS, upper and lower case labels in M routines can be the
target of a call from an external C routine to an M routine.

8. GT.M traditionally collated a null subscript between numeric
subscripts and string subscripts. The M standard specifies that null
subscripts be collated before numeric subscripts. When a database file
is created, it can now be created to use either traditional GT.M
collation or M standard collation for null subscripts.

Please see the announcement of the release
( ).

GT.M for x86 GNU/Linux used under the GNU General Public License (GPL)
can be downloaded from Source Forge
( ). Software for customers
who have purchased support can be downloaded from the GT.M FTP site.

Please also visit the new documentation area in the GT.M project page
( ).
Henceforth, we intend to make all documentation available there.

-- Bhaskar
ks dot bhaskar at fnf dot com <-- send e-mail here

GT.M V5.0-000 available

Post by Denve » Wed, 08 Jun 2005 12:10:28


I suppose that's okay if you have only two of the three kinds.

But with GT.M legacy collation, how does $O() work?


GT.M V5.0-000 available

Post by K.S. Bhask » Wed, 08 Jun 2005 20:02:49

WIth GT.M legacy collation, $O() doesn't work as well as one might like
it to on a database with null, numeric and string subscripts. I don't
know why it was originally designed that way (it was a design choice,
not a bug), and for the last 20 years, no GT.M customer had a database
with all three types of values for the same subscript - indeed, most
users prohibit null subscripts. But with this release we decided to
offer the option to choose. The election must be made when a database
file is created.

-- Bhaskar
ks dot bhaskar at fnf dot com <-- send e-mail here

GT.M V5.0-000 available

Post by rodd » Thu, 09 Jun 2005 04:32:02

In article < XXXX@XXXXX.COM >,

Are we talking about the null character as in $C(0) or the empty
string as in ""?

-- Rod --

GT.M V5.0-000 available

Post by Maury Pepp » Thu, 09 Jun 2005 04:55:58

Empty or null string, not null character.

See the tech bulletin: GT.M Null Subscripts and Null Subscripts Collation