La colonna TIME_MS in INFORMATION_SCHEMA.PROCESSLIST

In MariaDB, nella tabella INFORMATION_SCHEMA.PROCESSLIST e nell'output di SHOW FULL PROCESSLIST, è stata aggiunta la colonna 'TIME_MS'. Questo campo mostra le stesse informazioni della colonna 'TIME', ma in unità di millisecondi, con una precisione a livello di microsecondi (l'unità e la precisione della colonna 'TIME' è di un secondo).

Il valore mostrato nelle colonne 'TIME' e 'TIME_MS' è il periodo di tempo che il thread a cui si riferiscono ha trascorso nello stato attuale. Perciò può essere usata per controllare, ad esempio, da quanto tempo un thread sta eseguendo la query attuale, o da quanto tempo si trova in idle.

MariaDB [(none)]> select id, time, time_ms, command, state
    -> from information_schema.processlist, (select sleep(2)) t;
+----+------+----------+---------+-----------+
| id | time | time_ms  | command | state     |
+----+------+----------+---------+-----------+
| 37 |    2 | 2000.493 | Query   | executing |
+----+------+----------+---------+-----------+
1 row in set (2.00 sec)

Si noti che, a differenza di MySQL, in MariaDB la colonna 'TIME' (così come la colonna 'TIME_MS') non è influenzata dalle impostazioni di @TIMESTAMP. Questo significa che può essere utilizzata in modo sicuro con i thread che modificano @TIMESTAMP (come i thread di replica SQL). Si veda anche MySQL Bug #22047.

Una conseguenza è che la colonna 'TIME' di SHOW FULL PROCESSLIST e INFORMATION_SCHEMA.PROCESSLIST non può essere usata per capire se uno slave è in ritardo rispetto al master. Per questo scopo, si può utilizzare invece la colonna Seconds_Behind_Master nell'output di SHOW SLAVE STATUS.

L'aggiunta del campo TIME_MS si basa sulla patch microsec_process, sviluppata da Percona.

Commenti

Sto caricando i commenti......
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.