GT.M

GT.M is a high end platform for developing transaction processing database applications. Individual database files in the terabyte range are supported; a logical database can consist of many files. It provides full support for ACID transactions using a Software Transaction Memory (STM) programming model and optimistic concurrency control. The GT.M data model is hierarchical associative memory (i.e. multi-dimensional arrays) that imposes no restriction on the data types of the indexes or content, nor any restriction on the schema is that imposed by the application. Such databases are also referred to as "document oriented", "schemaless", or "schema-free".

Recent releases

Release Notes: Virtually unlimited global variable sizes. Transport Layer Security (TLS/SSL) for replication. An easier path when FIPS 140-2 certification is required for encrypted databases. Relink recursive: processes can explicitly link new versions of routines even when they have prior versions of routines with the same name already on the process stack. SOCKET device support for local sockets (also known as UNIX domain sockets. Faster database reads, especially when large numbers of processes (thousands) concurrently access a database file.

Release Notes: Adds IPv6 support for TCP connections. All GT.M uses of TCP/IP except the deprecated "TCP" devices use TCP over both IPv4 and IPv6. Maintains $KEY for terminal operation and introduces the [NO]EMPT[ERM] device parameter for terminal devices, which allows an "erase" character to terminate a READ when there are no characters in the input buffer. Improves critical section management and deadlock detection. Simplifies operational management. Provides a number of other enhancements, improvements in robustness, and bugfixes.

Release Notes: GT.M 6.0-002 and the new GTMJI GT.M Java plugin
together extend the usefulness of both GT.M
and Java by enabling in-process calls between Java and M application code.
Together, they make the power of GT.M available to Java application code,
and allow GT.M
applications to access functionality written in a popular programming language.
6.0-002 implements the changes within GT.M needed to allow access from and to Java
application code,
and GTMJI enables Java application code to call and be called by M code.
GTMJI is released as source code to be compiled and installed on each system.

Release Notes: Database file limits were significantly extended. The maximum supported key size was increased from 255 to 1,019 bytes. The new maximum global variable node size is 1,048,576 bytes (1 MB). The maximum size of a database file is now 1,040,187,392 (992 Mi) blocks. Operationally, MUPIP REORG TRUNCATE now reclaims and frees additional types of unused space from database files. The IO impact of MUPIP INTEG FAST has been reduced. There were also smaller enhancements and bugfixes.