GT.M V6.1-000 brings virtually unlimited global variable sizes, TLS support for replication, and much more
- Virtually unlimited global variable sizes: With the ability to map global variables to database regions at the level of subscripts rather than a complete global variable, GT.M global variables are now limited by factors external to GT.M - available storage, file system limits, memory, and so on. This has additional benefits. For example, if there are ranges of a global variable within which there are patterns of sequential access, mapping each range to a different region can take advantage of one of many optimizations in the GT.M database engine for sequential access.
- Transport Layer Security (TLS/SSL) for replication: With enhancements to the architecture of the encryption plug-in, GT.M can replicate over a secure connection. The reference implementation of a plug-in included with GT.M is tested with OpenSSL. The reference implementation also provides an option to use libgcrypt (from GnuPG) and libcrypto (OpenSSL) in "FIPS mode," removing a need to modify the plugin for sites that require certification for compliance with FIPS 140-2. Note: Achieving FIPS 140-2 certification requires actions and controls well beyond the purview of GT.M, including underlying cryptographic libraries that are certifiably FIPS compliant, administrative controls, and so on. FIS neither provides cryptographic libraries with GT.M nor recommends the use of any specific library - refer to the GT.M Administration and Operations Guide UNIX Edition for more details.
- Relink recursive: Processes can explicitly ZLINK new versions of routines even when they have prior versions of routines with the same name already on the process stack. When a process links a routine with the same name as an existing routine, future calls use the new routine. Prior versions of that routine on the stack remain on the stack until they QUIT, at which point they become inaccessible. This enhancement provides a mechanism to patch long-running processes, one that allows a process to retain more state than previous techniques.
V6.1-000 brings a number of other new features, as well. For example:
- SOCKET device support for local sockets (also known as UNIX domain sockets).
- The ability for a parent process to pass a SOCKET device to a child process in a JOB command.
- A $ZCLOSE intrinsic special variable that provides the status of a CLOSE of a PIPE device.
- Faster database reads, especially when large numbers of processes (thousands) concurrently access a database file.
- Nanosecond timestamps to determine whether a source file is newer than an object file.
- Performance enhancements to databases on AIX that use the MM access method.
Support for IPv6 previously released in V6.0-003 as field-test grade functionality is considered production grade functionality in V6.1-000. The release also provides fixes for a number of issues.