Manual:Ip changes table/en

Every time an edit by a logged out user is saved, a row is created in the ip_changes table. This stores the IP as a hex representation so that we can more easily find edits within an IP range. One of the primary purposes of the table is to support IP range queries at Special:Contributions. This table was introduced in.

ipc_rev_id
Foreign key to the table, also serves as the unique primary key.

ipc_rev_timestamp
The timestamp of the revision.

ipc_hex
Hex representation of the IP address, as returned by IP::toHex.


 * For IPv4 it will resemble:
 * For IPv6:

BETWEEN is then used to identify revisions within a given range.

Schema summary
+---+--+--+-+-+---+ +---+--+--+-+-+---+ +---+--+--+-+-+---+
 * Field            | Type             | Null | Key | Default | Extra |
 * ipc_rev_id       | int(10) unsigned | NO   | PRI | 0       |       |
 * ipc_rev_timestamp | binary(14)      | NO   | MUL | NULL    |       |
 * ipc_hex          | varbinary(35)    | NO   | MUL |         |       |

+---+--+--+-++---+ +---+--+--+-++---+ +---+--+--+-++---+
 * Field            | Type             | Null | Key | Default        | Extra |
 * ipc_rev_id       | int(10) unsigned | NO   | PRI | 0              |       |
 * ipc_rev_timestamp | binary(14)      | NO   | MUL |                |       |
 * ipc_hex          | varbinary(35)    | NO   | MUL |                |       |