Skip to content
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

Fix misleading error mapping for row limit error #9448

Merged
merged 1 commit into from
Dec 30, 2021

Conversation

GuptaManan100
Copy link
Member

Description

This PR fixes a misleading error mapping for row limit error.

Related Issue(s)

Checklist

  • Should this PR be backported?
  • Tests were added or are not required
  • Documentation was added or is not required

Deployment Notes

… for it

Signed-off-by: Manan Gupta <manan@planetscale.com>
@GuptaManan100 GuptaManan100 merged commit 8bb0235 into vitessio:main Dec 30, 2021
@GuptaManan100 GuptaManan100 deleted the row-limit-error branch December 30, 2021 08:51
@aquarapid
Copy link
Contributor

aquarapid commented Jan 12, 2022

For release notes:

Potential breaking change, depending on application introspection of returned error messages:

 * In previous Vitess versions, if the vttablet row limit (-queryserver-config-max-result-size) was exceeded, an error like:
 ERROR 10001 (HY000): target: unsharded.0.master: vttablet: rpc error: code = ResourceExhausted desc = Row count exceeded 10000 (errno 10001) (sqlstate HY000) ...
   would be reported to the client.  To avoid confusion, the error mapping has been changed to report the error as similar to:
 ERROR 10001 (HY000): target: unsharded.0.primary: vttablet: rpc error: code = Aborted desc = Row count exceeded 10000 (errno 10001) (sqlstate HY000) ...
   instead
   
 * Because of this error code change, the vttablet metric:
  vttablet_errors{error_code="ABORTED"}
 will be incremented upon this type of error, instead of the previous metric:
  vttablet_errors{error_code="RESOURCE_EXHAUSTED"}

 * In addition (non-breaking change), the vttablet error message logged is now different. 
 Previously, a (misleading;  due to the PoolFull) error was logged:
   E0112 09:48:25.420641  278125 tabletserver.go:1368] PoolFull: Row count exceeded 10000 (errno 10001) (sqlstate HY000) ...
 Post-change, a more accurate warning is logged instead:
   W0112 09:38:59.169264   35943 tabletserver.go:1503] Row count exceeded 10000 (errno 10001) (sqlstate HY000) ...

@deepthi deepthi added release notes (needs details) This PR needs to be listed in the release notes in a dedicated section (deprecation notice, etc...) and removed release notes labels Jan 19, 2022
@deepthi
Copy link
Member

deepthi commented Jan 19, 2022

Thanks @aquarapid!
@GuptaManan100 can you add this to the release notes?

@GuptaManan100
Copy link
Member Author

Okay I'll take care of it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Query Serving release notes (needs details) This PR needs to be listed in the release notes in a dedicated section (deprecation notice, etc...) Type: Enhancement Logical improvement (somewhere between a bug and feature)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants