MySQL 8.4.1
Source Code Documentation
Glossary

Following is a list of the terms used in the TempTable storage engine source code.

This is to avoid confusion because in the surrounding code (outside of storage/temptable) different terms are used to designate the one thing and in some cases a given term can designate different things.

For example some surrounding code reads key->records_per_key(j) where the first "key" (key->...) designates an index and the second "key" (..._key(j)) designates distinct indexed cells.

Below are the terms used in TempTable source code with some explanations.

Table

A table consists of rows and columns.

id color_name hex_code
1 Red FF0000
2 Orange FF8800
3 Yellow FFFF00
4 Green 00FF00
5 Cyan 00FFFF
6 Blue 0000FF
7 Pink FF00FF

Row

A row is a horizontal slice from the table.

id color_name hex_code
1 Red FF0000
2 Orange FF8800
3 Yellow FFFF00
4 Green 00FF00
5 Cyan 00FFFF
6 Blue 0000FF
7 Pink FF00FF

Also called "record" elsewhere.

Column

A column is a vertical slice from the table. It has a name - "hex_code" in the example.

id color_name hex_code
1 Red FF0000
2 Orange FF8800
3 Yellow FFFF00
4 Green 00FF00
5 Cyan 00FFFF
6 Blue 0000FF
7 Pink FF00FF

Also called "field" elsewhere.

Cell

A cell is where a row intersects with a column.

id color_name hex_code
1 Red FF0000
2 Orange FF8800
3 Yellow FFFF00
4 Green 00FF00
5 Cyan 00FFFF
6 Blue 0000FF
7 Pink FF00FF

Also called "field" elsewhere.

Index

An index is a complex structure covering one or more columns. Also called "key" elsewhere.

Indexed column

A column that is covered by an index.

Indexed cell

An indexed cell is a cell that is covered by an index. An intersection between a row and an indexed column. Also called "key", "field", "subkey", "key part", "key segment" elsewhere.