ProxySQL supports query annotations to modify the normal behavior of queries. Through this, queries can be tuned individually. Query annotations are supplied inside a comment leading to the query which behavior wants to be modified, e.g:
SELECT /*+ ;cache_ttl=0;query_timeout=100 */ c FROM sbtest3 WHERE id=2
Currently supported query annotations
- cache_ttl: Specifies how long the query will be cached, in milliseconds.
- query_delay: Specifies a time that the query will be delayed before being processed, in milliseconds.
- query_retries: Number of times the query will be retried before returning a failure to the client.
- query_timeout: Specifies the maximum execution time of the query, in milliseconds.
- hostgroup: Specifies the destination hostgroup of query.
- mirror: Activates mirroring for the query, and sets the
mirror_hostgroup
for it. - max_lag_ms: Sets the maximum replication lag of the aurora replica when choosing a connection.
- min_epoch_ms: Specifies the
max_lag_ms
but in terms of an absolute min epoch time, instead of relative value. - min_gtid: Specifies the minimun GTID that the target server needs to have to be selected for this query.
- create_new_connection: Creates a new backend connection instead of reusing a current one from the connection pool.