spacer

V5.4-000 is a major new GT.M release with significant new functionality.

  • GT.M triggers are code fragments stored in databases files. When a process updates a global variable, any triggers in that database file whose signatures match the update are automatically executed with the update. Triggers have many uses, for example, to:
    • Enforce schema-level consistency: Since database schema created in a normal M application are implicit, M applications implement logic to maintain and enforce enforce conformance with an application schema. Using triggers to enforce schema-level consistency ensures all processes invoke the code uniformly, and increases code modularity and maintainability.
    • Allow an application to maintain one or more non-primary key indexes. For example, a trigger on updates to global nodes containing a customer id can maintain an index on the last name.
    • Implement business logic: For example, an update to an account could automatically trigger updates to related accounts.
    • Reducing replication traffic: Since the GT.M replication stream carries only the triggering updates, not the triggered updates, network traffic is reduced.
    • Automate application defined logging or journaling of updates or maintaining historical records. Triggers can be used to control these.
    • Implement referential integrity: For example, a trigger can prevent the posting of a bank transaction for an inactive account and display a rule violation message.
    • Debugging: Debugging an application with multiple concurrent accesses is hard. You can use triggers to establish "watch points" on global variable updates to trap incorrect accesses. For example, if an application is failing because certain global variable nodes either have incorrect values or when previously set values disappear. A trigger can be used to trap all such accesses.
    • Implement a dataflow based programming paradigm: Although not a primary goal of the implementation of triggers, you can use them to implement applications that use a dataflow programming paradigm.

  • MUPIP INTEG now has an ONLINE option to check a database for structural integrity while applications continue to operate. In prior releases of GT.M, MUPIP INTEG would freeze updates. Online operation is now the default for databases that contain no version 4 format database blocks.

GT.M V5.4-000 also provides a friendlier "out of the box" experience. Once GT.M is installed, the new shell script "gtm" automatically runs GT.M with a reasonable set of default environment variables, and even automatically creates a default global directory and default database with before image journaling and automatic recovery. So, after installation, literally one command takes a user into a ready to use GT.M environment.

More details are in the GT.M V5.4-000 Release Notes. Triggers are described in the GT.M Triggers Technical Bulletin. There is also an updated GT.M Security Philosophy and Implementation Technical Bulletin 

For more information, please contact K.S. Bhaskar.