sysown / proxysql

High-performance MySQL proxy with a GPL license.
http://www.proxysql.com
GNU General Public License v3.0
6.05k stars 983 forks source link

Want to send heavy costing select query to read server without splitting it on write #4559

Closed NandrajM closed 5 months ago

NandrajM commented 5 months ago

This is the place to report a reproducible bug, documentation error or feature request for ProxySQL.

Support questions will not be answered here. For community support, use the Google forum: https://groups.google.com/forum/#!forum/proxysql

If you are submitting a reproducible bug report, please provide:

If this is a crashing bug, please also include:

If the above information is not provided, this issue is likely to be closed.

Please use markdown to format any code or SQL: https://guides.github.com/features/mastering-markdown/

Thank you!

NandrajM commented 5 months ago

I have created server with different HG id

+--------------+-------------+------+-----------+--------+--------+-------------+-----------------+---------------------+---------+----------------+---------+ | hostgroup_id | hostname | port | gtid_port | status | weight | compression | max_connections | max_replication_lag | use_ssl | max_latency_ms | comment | +--------------+-------------+------+-----------+--------+--------+-------------+-----------------+---------------------+---------+----------------+---------+ | 1 | 10.204.2.x1 | 3306 | 0 | ONLINE | 1000 | 0 | 1000 | 0 | 1 | 0 | | | 2 | 10.204.2.x2 | 3306 | 0 | ONLINE | 1000 | 0 | 1000 | 0 | 1 | 0 | | | 2 | 10.204.2.x1 | 3306 | 0 | ONLINE | 1000 | 0 | 1000 | 0 | 1 | 0 | | | 3 | 10.204.2.x2 | 3306 | 0 | ONLINE | 1000 | 0 | 1000 | 0 | 0 | 0 | | +--------------+-------------+------+-----------+--------+--------+-------------+-----------------+---------------------+---------+----------------+---------+

below are my rules

+---------+--------+--------------------+----------------------+-----------------------+-------+ | rule_id | active | match_digest | match_pattern | destination_hostgroup | apply | +---------+--------+--------------------+----------------------+-----------------------+-------+ | 1 | 1 | NULL | ^SELECT.*FOR UPDATE$ | 1 | 1 | | 2 | 1 | NULL | ^SELECT | 2 | 1 | | 3 | 1 | 0x434117179c586021 | ^WEBORDER | 3 | 1 | | 4 | 1 | 0x9c3f63187be28ede | NULL | 3 | 1 | +---------+--------+--------------------+----------------------+-----------------------+-------+

with above configuration my heavy read (0x9c3f63187be28ede ) query not directly pointing to read server.

please healp

JavierJF commented 5 months ago

Hi @NandrajM,

this issue doesn't follow the issue template, and it's a support question rather than a issue. As the issue template says:

Support questions will not be answered here. For community support, use the Google forum: https://groups.google.com/forum/#!forum/proxysql

This is properly documented. I will be replying this time, but future issues like this are likely to just be closed. You are using match_digest which is for matching a pattern query digest (text) if you want to match the hex (0x9c3f63187be28ede) you need to use digest. Using one of this fields is enough (digest, match_pattern and match_digest). You don't need to use several fields. For more info:

I'm closing the issue now. Thanks.