docs: Document InnoDBStalledPrimary VTOrc analysis code#2124
Draft
promptless[bot] wants to merge 1 commit into
Draft
docs: Document InnoDBStalledPrimary VTOrc analysis code#2124promptless[bot] wants to merge 1 commit into
promptless[bot] wants to merge 1 commit into
Conversation
Document the new InnoDBStalledPrimary analysis code that detects when a MySQL primary is stalled on an InnoDB semaphore wait. This allows VTOrc to trigger EmergencyReparentShard before mysqld self-kills, reducing outage duration. Ref: vitessio/vitess#20169
| | `ClusterHasNoPrimary` | VTOrc detects when a shard doesn't have any primary tablet elected | VTOrc runs PlannedReparentShard to elect a new primary | | ||
| | `DeadPrimary` | VTOrc detects when the primary tablet is dead | VTOrc runs EmergencyReparentShard to elect a different primary | | ||
| | `IncapacitatedPrimary` | VTOrc detects when the primary tablet is consistently failing health checks but is still network-reachable | VTOrc runs PlannedReparentShard, falling back to EmergencyReparentShard if that fails | | ||
| | `InnoDBStalledPrimary` | VTOrc detects when the primary's MySQL is stalled on an InnoDB semaphore wait (mysqld is alive but writes are not committing). Requires MySQL 8.0+ and SELECT privilege on `performance_schema.error_log` for the `dba` user. | VTOrc runs EmergencyReparentShard to elect a different primary | |
Contributor
Author
There was a problem hiding this comment.
Added InnoDBStalledPrimary recovery action based on PR #20169 which implements the InnoDBStalledPrimary analysis code, the HasRecentInnoDBLongSemaphoreWait function in go/vt/mysqlctl/replication.go, and the recovery wiring in go/vt/vtorc/logic/topology_recovery.go.
Source: vitessio/vitess#20169
✅ Deploy Preview for vitess ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Open this suggestion in Promptless to view citations and reasoning process
Add documentation for the new InnoDBStalledPrimary analysis code that enables VTOrc to detect MySQL primaries stalled on InnoDB semaphore waits and trigger EmergencyReparentShard for faster recovery.
Trigger Events
InnoDBStalledPrimaryto detect stalled InnoDB semaphoresTip: Use Vale? Add your vale.ini when setting up your Docs Collection.