Sorry.  Annotations embedded below.

-- Bhaskar

Nancy Anthracite wrote:
This sounds really impressive and I don't even understand half of it! Thanks to everyone involved.

On Monday 06 June 2005 07:12 pm, K.S. Bhaskar wrote:

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
(http://www.sanchez-gtm.com/user_documentation/targets/GTM_V5.0-000_Release
_Notes.html).

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.

[KSB] Probably not relevant to the VistA community. This greatly reduces the need for a periodic mupip integ -tn_reset operation. If an institution were to make a database million updates a day to its most active database file, even with a 32-bit transaction counter, it would need a tn_reset only every 11 years. If a small institution were to make 2,000 updates a day, it would need a tn_reset operation every 5,879 years. But a bank making 10,000,000 updates a day to its most active global variable would need an annual transaction number reset. With a 64-bit transaction number, a transaction number reset is still needed (so remember to keep good records since you will have retired by the time your successor needs to perform a tn_reset!), but the intervals in the previous examples would be increased to 50,505,511,339, 25,252,755,669,675 and 5,050,551,133 years respectively.

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.

[KSB] I believe VistA coding standards are to use variable names up 8 characters, and not to use non-standard features like $Increment(). But there are instances of $I() usage in VistA which are bypassed with standard M code when ZTMGRSET is run to set up GT.M as the target M platform. Now, ZTMGRSET et al can be modified to use $I() for GT.M, and should give a small performance boost. Whether such a performance boost is noticeable is unknown - presumably the uses of $I() in VistA didn't creep in unnoticed but were the result of a conscious decision on the part of VA developers to use a non-standard extension for performance or other reasons.

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

[KSB] This will allow the new "direct connect" CPRS GUI to be used more easily. Effectively, it means that VistA can be packaged & deployed like other network services under inetd/xinetd, which is a standard way of deploying network services on UNIX/Linux.

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.

[KSB] Probably of interest to a small part of the GT.M community, those deploying logical dual site applications and who find the primary running faster than the secondary (only a few specific large banks, as far as I know).

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.

[KSB] These are probably not of interest to VistA users, since VistA standards call for no null subcripts, and for identifiers and labels to be all upper case.

Please see the announcement of the release
(http://www.sanchez-gtm.com/news/news_060605.htm).

GT.M for x86 GNU/Linux used under the GNU General Public License (GPL)
can be downloaded from Source Forge
(http://sourceforge.net/projects/sanchez-gtm).  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
(http://www.sanchez-gtm.com/user_documentation/user_doc.htm).
Henceforth, we intend to make all documentation available there.

[KSB] Do bookmark the new GT.M documentation page - it will get you to the latest GT.M documentation.


-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.  How far can you shotput
a projector? How fast can you ride your desk chair down the office luge track?
If you want to score the big prize, get to know the little guy. Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20
_______________________________________________
Hardhats-members mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/hardhats-members

Reply via email to