GT.M locates records by finding the last key in a block that is greater than or equal to (lexically) the current key. If the block has a level of zero (0), the location is either that of the record in question, or that of the (lexically) next record, if the record in question does not exist. If the block has a level greater than zero (0), the record contains a pointer to the next level to search.
GT.M does not require that the key in an index block correspond to an actual existing key at the next level.
The final record in each index block (the *-record) contains a *-key ("star-key"). The *-key is a zero-length key representing the last possible value of the M collating sequence.
The *-key is the smallest possible record, consisting only of a record header and a block pointer, with a key size of zero (0).
The *-key has the following characteristics:
A record size of seven (7) bytes
A record header size of three (3) bytes
A key size of zero (0) bytes
A block pointer size of four (4) bytes