-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
First POC for integration with ReadySet #4851
base: v3.0
Are you sure you want to change the base?
Conversation
Monitor is able to detect if a backend is a ReadySet server, and it enables special monitoring. The special monitoring hacks replication lag checks: a ReadySet server is "monitored for replication lag" , but it has a special query and a special handler. The query for check is "SHOW READYSET STATUS" , and the `Status` line is processed: * Online: the backend is configured as ONLINE * Maintenance* : the backend is configured as OFFLINE_SOFT * anything else, or failed check: SHUNNED A new monitor table is also added: `readyset_status_log` . It has a similar structure of `mysql_server_replication_lag_log` , but instead of storing `repl_lag` (replication lag) the full output of `SHOW READYSET STATUS` is saved as a JSON (that can be queried using `JSON_EXTRACT()`
INFO: if status is changed to ONLINE WARNING : if status is changed to anything else
Adding an update here. I tested and the integration is working as expected for MySQL. Not sure if this should be addressed on this PR, however two missing functionalities:
EDIT:
The log message LGTM. |
- Renamed ReadySet to Readyset - fixed incorrect status variable - added missing newlines
Support for PostgreSQL is pending. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
retest this please |
Monitor is able to detect if a backend is a ReadySet server, and it enables special monitoring. The special monitoring hacks replication lag checks: a ReadySet server is "monitored for replication lag" , but it has a special query and a special handler. The query for check is "SHOW READYSET STATUS" , and the
Status
line is processed:A new monitor table is also added:
readyset_status_log
. It has a similar structure ofmysql_server_replication_lag_log
, but instead of storingrepl_lag
(replication lag) the full output ofSHOW READYSET STATUS
is saved as a JSON (that can be queried usingJSON_EXTRACT()