github / github/gh-mysql-conf-diff

Connection and query timeouts

Open
#2 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
6
Forks
3
PR merge metrics
No merged PRs in 30d

Description

### Problem

- [ ] If MySQL does not respond as expected, there should be a timeout on the connection and query attempts.
- [ ] Timeout should be set to a reasonable value.
- [ ] User should be able to specify a timeout value.

### Original reported issue

```
gh-mysql-config-diff-apply does not behave well when the MySQL server is running but not behaving correctly.

Details
[hostname] (part of a vitess keyspace), MySQL was in some weird state. It reported the following error message:

Error 1135: Can't create a new thread (errno 11); if you are not out of available memory, you can consult the manual for a possible OS-dependent bug

When I logged into the machine, I saw that there were hundreds of processes related to gh-mysql-config-diff-apply running.

I killed the processes, killed the mysql server, and restarted it. Things seem to be back to normal now.

I'm not sure whether this is a symptom or the cause of MySQL being in a weird state.

Either way, gh-mysql-config-diff-apply needs to be better at handling error conditions and timing out conservatively if MySQL does not behave as expected.
```

Contributor guide

Open the contributing guide

Research direction

Start at the gh-mysql-config-diff-apply entry point and trace how MySQL connections and queries are made. Determine where conservative default timeouts and a user-specified timeout belong; done means both connection and query attempts stop reliably when MySQL does not respond.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, mysql
Domain
cli, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.