GT.M Administration and Operations Guide

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts.

GT.M™ is a trademark of Fidelity Information Services, Inc. Other trademarks are the property of their respective owners.

This document contains a description of GT.M and the operating instructions pertaining to the various functions that comprise the system. This document does not contain any commitment of FIS. FIS believes the information in this publication is accurate as of its publication date; such information is subject to change without notice. FIS is not responsible for any errors or defects.

December 11, 2009


Table of Contents

Preface
About This Manual
Intended Audience
Purpose of the Manual
How to Use This Manual
Overview
Examples
1. About GT.M
Hardware/Operating System Environment
Installation
Security
Program Development Environment
Database Subsystem
GT.M Utility Programs
GDE
MUPIP
LKE
Database Structure Editor
Database Integrity
Interprocess Communication
2. Installing GT.M
Obtaining GT.M Distribution Media
Before you begin
Installation Procedure
3. Basic Operations
Introduction
Before Starting GT.M
Defining the Environment Variables
Configuring and operating GT.M with Unicode™ support (optional)
Providing Access to GT.M
Running GT.M
4. Global Directory Editor
GDE Overview
Global Directories
Creating a Default Global Directory
Identifying the Current Global Directory
Mapping Global Variables in a Global Directory
Examining the Default Global Directory
Customizing a Global Directory
Using GDE
Guidelines for Mapping
Global Directory Editor Commands
Command Syntax
@
Add
Change
Delete
Exit
Help
LOCks
LOG
Quit
Rename
SEtgd
SHow
Template
Verify
Name, Region, and Segment Qualifiers
Name Qualifiers
Region Qualifiers
Segment Qualifiers
GDE Command Summary
GDE Command Qualifier Summary
5. MUPIP
Operating In MUPIP
Use of Global Directories
MUPIP Commands and Qualifiers
Backup
CReate
EXit
EXTEnd
EXTRact
Freeze
INTEG
Journal
Load
REOrg
REPlicate
REstore
RUndown
Set
Stop
MUPIP Command Summary
6. GT.M Journaling
Deciding Whether to Use Journaling
Types of Issues Addressed with Journaling
Advantages of Journaling
Disadvantages of Journaling
Additional Considerations
Setting Up for Journaling
Fencing Transactions
Journal File Operations
Processing Journal Files
Recovering Damaged Database Files
Processing After a Recovery
GT.M Language Extensions for Journaling
ZTSTART and ZTCOMMIT
VIEW Keywords
$VIEW() Keywords
MUPIP Set
SET Object Identifying Qualifiers
SET Action Qualifiers
SET -JOURNAL Options
SET -JOURNAL Examples
SET -REPLICATION options
MUPIP SET & Standalone Acess to Database
MUPIP BACKUP Qualifiers
MUPIP JOURNAL
Journal File Selection Argument
Journal Action Qualifiers
Journal Direction Qualifiers
Journal Time Qualifiers
Journal Sequence Number Qualifiers
Journal Control Qualifiers
Journal Selection Qualifiers
Journal Qualifier Rules & Compatibilities
Journal Extract Formats
7. Database Replication
Theory of Operation
GT.M Processes
Journal Pool
Source Server
Receiver Server
Server Shutdown
The Update Process
Application Instance
Filters
Statistics
Failover and Database Synchronization
Implementing Replication and Recovery
Application Architecture
System Requirements
Failover
Network Link between Systems
Database Repair
Procedures
Commands and Qualifiers
Controlling Replication
Other Improvements
8. M Lock Utility
Operating in LKE
Functions of the M Lock Utility (LKE)
Invoking and Exiting LKE
LOCKs and Global Directories
Establishing a Global Directory
LKE Commands and Qualifiers
Clear
Exit
Help
SHow
SPawn
LKE Command Summary
9. Database Structure Editor
Operating in DSE
DSE Commands and Qualifiers
DSE Command Syntax
ADD
ALL
Buffer_flush
CHange
CLose
CRitical
Dump
EValuate
EXit
Find
Help
Integrit
Maps
OPen
OVerwrite
Page
RAnge
REMove
REStore
SAve
SHift
Wcinit
DSE Command Summary
10. Greystone Database Structure
Database File Organization
Database File Header
File Header Data Elements
File Header Control Fields
MLOCK Space
Master Bitmap
Bitmaps
Database Structure
Tree Organization
GDS Blocks
GDS Records
GDS Keys
11. Maintaining Database Integrity
Verifying Database Integrity
Regularly Scheduled Verification
Before or After Major Transfers
Immediately after Catastrophic Events
Immediately after Run-Time Database Errors
Immediately After Database Repairs
Approaches to Database Recovery
Recover from Journals
Restore from Backup
Repair with DSE
Preventive Maintenance
Repairing the Database with DSE
Using the Proper Database File
Locating Structures with DSE
Safety in Repairs
Discarding Data
Concurrent Repairs
Terminating Processes
Finding and Fixing Database Errors
C1–Possible Cache Control Problems
H1 - Process Hangs
H3–Database Access Problems
H4–Database Cache Problems
H5–Critical Section Problems
H6–UNIX Problems
H7–Disk Hardware Problems
H8–Application Problems
I1–MUPIP INTEG Errors
I2–GT.M Version Mismatch
I3–File Header Errors
I4–File Size Errors
I5–More Database Access Problems
I6–Transient Errors
I7–Database Rundown Problem
I8–Repair-Induced Problems
K1–Bad Key
K2–Keys Misplaced
K3–Block Doubly Allocated
K4–Pointer Problems
K5–Star Key Problems
K6–Compression Count Error
K7–Key Warning
M1–Bitmap Errors
M2–Bitmap Header Problems
O1–Bad Block
O2–Record Errors
O3–Data Block Errors
O4–Salvage of Data Blocks with Lost Indices
P1–Process Damage
Q1–Restricting Database Access
R1–GT.M Run-Time Errors
R2–Structural Database Integrity Errors
R3–Run-time Database Cache Problems
R4–Stopped Processes
R5–No More Room in the File
R6–GTMASSERT and GTMCHECK Errors
R7–Interlocked Queue Hardware Problems
R8–Database Tree Maximum Level Exceeded
R9–Read-only Process Blocked
12. Raw Partitions
Setting Up a Raw Partition
Reinitializing a Partition
Backing Up Raw Partitions
Method 1
Method 2
Journaling Issues
Restrictions
A. Appendix
Programs
ftok
gmtsecshr
Checking IPC Resources
Index

List of Figures

7.1. GT.M Recovery Architecture
7.2. Logical Dual-Site Application Architecture
7.3. Complex Dual-Site Failure
10.1. Two-level directory tree; Three-level Global Variable Tree