docs: document automatic MySQL port detection - #894
Open
slayerjain wants to merge 1 commit into
Open
Conversation
Keploy now identifies MySQL on any port rather than only 3306/4000 plus whatever mysqlPorts listed (keploy/keploy#4389). Nothing described that, and mysqlPorts itself was never documented at all — a user whose MySQL ran on 3307, behind ProxySQL, or on a Cloud SQL Auth Proxy hit a stuck handshake with no discoverable fix. Adds a "MySQL port detection" section to the configuration reference covering how detection works in each mode (reading the server handshake during Record, recovering the port from Mocks during Test), documents mysqlPorts and the new disableMysqlAutoDetect field, and explains when either is worth setting. Adds a troubleshooting entry for the symptom users actually search for — "Lost connection to server at 'handshake: reading initial communication packet'" — since that error is what surfaces when detection is disabled or the Keploy version predates it. Signed-off-by: slayerjain <shubhamkjain@outlook.com>
13 tasks
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.
What has changed?
Documents automatic MySQL port detection, shipped in keploy/keploy#4389.
Keploy used to route MySQL to its parser purely by destination port —
3306and4000by default, plus whatevermysqlPortslisted. MySQL on any other port (a second instance on3307, ProxySQL on6033, MaxScale on4006, StarRocks on9030, a Cloud SQL Auth Proxy) could not complete its handshake, and the application failed to connect.Two documentation gaps made that worse than it needed to be:
mysqlPortswas never documented anywhere. It existed only in the source. A user hitting the problem had no discoverable fix.Lost connection to server at 'handshake: reading initial communication packet', and it appeared nowhere in the docs.Changes
running-keploy/configuration-file.mdmysqlPortsanddisableMysqlAutoDetectto the sample config block, matching whatkeploy config --generatenow emits.keploy-explained/common-errors.mdThis is a documentation-only change — no behaviour is described that isn't already merged or in review upstream.
This PR Resolves #(issue) — NA
Type of change
How Has This Been Tested?
Both commands run clean locally:
npm run build→ exits 0,[SUCCESS] Generated static files in "build", 205 documents processed, no broken-link warnings (the new relative link from the troubleshooting entry into the config reference anchor resolves).npx prettier@2.8.8 --checkon both files →All matched files use Prettier code style!vale 3.0.3 --config=.vale.inion both files → the only remaining alerts are on pre-existing lines I did not touch (matchType,hardcoding,xml,json,traceroute); CI runs withfilter_mode: diff_context, so none of them apply to this diff. No alerts on any added line.No screenshots attached — the change is prose and a config snippet with no new visual elements. Happy to add one of the rendered MySQL port detection section if you'd like it in the PR.
Checklist: